Python/실습

92. [Python] 프로그래밍 실습 : STRINGS(문자열)

천재단미 2025. 1. 19. 16:39
728x90
반응형

 

 

 

 

 

 

1. 문자열(Strings)의 기초

 

1-1. 문자열 정의

  • 문자열(String)은 문자(Character)의 집합으로, 작은따옴표(') 또는 큰따옴표(")로 감싸서 표현합니다.
text1 = 'Hello'
text2 = "Python"
print(text1, text2)  # Hello Python

 

 

1-2. 문자열 연산

  • 문자열 연결(Concatenation):
  • str1 = "Hello" str2 = "World" result = str1 + " " + str2 print(result) # Hello World

문자열 반복:

repeat = "Python! " * 3
print(repeat)  # Python! Python! Python!

 

 

1-3. 문자열 인덱싱(Indexing)과 슬라이싱(Slicing)

인덱싱: 문자열의 특정 위치에 접근.

text = "Python"
print(text[0])  # P
print(text[-1])  # n

 

슬라이싱: 문자열의 일부를 추출.

text = "Programming"
print(text[0:6])  # Progra
print(text[3:])   # gramming
print(text[:5])   # Progr

 

 


 

2. Print와 User Input

 

2-1. Print 함수

  • print()는 데이터를 화면에 출력하는 함수입니다.

다양한 출력 예제:

print("Hello, Python!")  # 기본 출력
print("Age:", 25)        # 여러 데이터를 쉼표로 구분
name = "Alice"
print(f"My name is {name}")  # f-string을 활용한 출력

 

 

2-2. 사용자 입력(User Input)

  • input() 함수는 사용자로부터 데이터를 입력받습니다.

기본 예제:

name = input("What is your name? ")
print(f"Hello, {name}!")

 

  • 숫자 입력 처리:
  • python num = int(input("Enter a number: ")) print(f"The number you entered is {num}")

 

3. 실습 문제 풀이

문제 1: 사용자 이름 출력하기

  • 문제: 유저한테서 KMH값을 입력 받으면, 그에 맞는 MPH로 변환하는 코드를 만드세요.
  • MPH = 0.6214 * KMH

풀이:

KMH = input('KMH입력 :')
MPH = int(KMH)*0.6214
print(f'KMH입력이 {KMH} 일때, MPH은 {MPH} 입니다.')

 

출력

KMH입력이 90 일때, MPH은 55.925999999999995 입니다.
KMH입력 : 90

 

 

 

 

 

문제 2: 문자열 길이 출력

  • 문제: 사용자가 입력한 문자열의 길이를 출력하세요.

풀이:

text = input("문자열을 입력하세요: ")
print(f"입력한 문자열의 길이는 {len(text)}입니다.")

 

 

문제 3: 문자열 뒤집기

  • 문제: 입력된 문자열을 뒤집어 출력하세요.

풀이:

text = input("문자열을 입력하세요: ")
reversed_text = text[::-1]
print(f"뒤집어진 문자열: {reversed_text}")

 

 

문제 4: 문자열에서 특정 문자 개수 세기

  • 문제: 입력된 문자열에서 특정 문자의 개수를 세어 출력하세요.

풀이:

text = input("문자열을 입력하세요: ")
char = input("찾을 문자를 입력하세요: ")
count = text.count(char)
print(f"'{char}' 문자는 {count}번 등장합니다.")

 

 

문제 5: 문자열에서 첫 글자를 대문자로

  • 문제: 입력된 문자열의 첫 글자를 대문자로 변환하세요.

풀이:

text = input("문자열을 입력하세요: ")
capitalized_text = text.capitalize()
print(f"변환된 문자열: {capitalized_text}")

 


 

4. 심화 내용

4-1. 문자열 내장 함수

 

문자열 함수 예제:

text = "python programming"
print(text.upper())  # 대문자로 변환
print(text.lower())  # 소문자로 변환
print(text.replace("python", "Java"))  # 특정 문자열 대체
print(text.split())  # 문자열을 리스트로 분리

 

 

4-2. 실습: 문자열 변환 프로그램

  • 문제: 문자열을 입력받아 아래 조건에 따라 변환 프로그램을 작성하세요.
    1. 대문자로 변환.
    2. 소문자로 변환.
    3. 특정 문자를 다른 문자로 대체.

풀이:

text = input("문자열을 입력하세요: ")
print(f"대문자 변환: {text.upper()}")
print(f"소문자 변환: {text.lower()}")
old = input("대체할 문자를 입력하세요: ")
new = input("새로운 문자를 입력하세요: ")
print(f"변환된 문자열: {text.replace(old, new)}")

 

 

4-3. 실습: 문자열 변환 프로그램

  • 문제: 유저한테, 년도와 월을 입력받으세요.
    1. 해당 년도와 월을 출력.
    2. 아래 달력과 관련된 코드 이용

 

풀이:

theyear =  input('년도입력: ')
themonth=  input('월입력: ')
print(f' import calendar {theyear}, {themonth}')

 

출력

년도입력:  2025
월입력:  01
 import calendar 2025, 01

 

 

import calendar
print(calendar.month(int(year), int(month)))

 

 

출력

January 2025
Mo Tu We Th Fr Sa Su
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

 

 

 

theyear =  input('년도입력: ')
themonth=  input('월입력: ')
import calendar
print(calendar.month(int(year), int(month)))

 

 

출력

년도입력:  2025
월입력:  02
    January 2025
Mo Tu We Th Fr Sa Su
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

 

 

 

 

728x90
반응형
home top bottom
}