본문 바로가기
프로그래밍 언어 & 데이터베이스/Python

자료형 변환 & 문자열 포맷팅 예시

by ♥︎해이나♥︎ 2021. 6. 6.
반응형

자료형 변환, 문자열 포맷팅을 활용하는 방법에 대한 예시들을 정리해 보았다. 

 

 

자료형 변환

자료형 변환이란 데이터 타입을 바꾸는 것을 의미한다. 예를 들어 기존에 소수였던 값을 정수로, 문자열을 소수로 바꾸는 등 원하는대로 자료형을 바꾸어 출력할 수 있다. 단, 숫자가 아닌 문자는 정수형이 될 수 없기 때문에 오류가 발생한다는 점을 기억해 두도록 하자.

 

print(int(1.7)) #결과값 1
print(float(5)) #결과값 5.0
print(int("2") + int("7")) #문자열을 정수형으로 바꾼 것, 결과값 9
print(float("1.6") + float("4")) #문자열을 소수형으로 바꾼 것, 결과값 5.6
print(str(2) + str(8)) #숫자를 문자열로 바꾼 것, 결과값 28

baby = 2
print("저는 자녀가 " + str(baby) + "명 있습니다.") #결과값 저는 자녀가 2명 있습니다.
print(int("안녕")) #문자열은 정수형이 될 수 없기 때문에 오류 발생

 

문자열 포맷팅

문자열 포맷팅이란, 문장의 특정한 위치에 지정한 값을 삽입해 주는 것이다. 

 

# 아래와 같은 문장을 출력하는 몇가지 방법
# 제 생일은 1987년 5월 26일입니다.

year = 1987
month = 5
day = 26

print("제 생일은 " + str(year) + "년 " + str(month) + "월 " + str(day) + "일입니다.")
print("제 생일은 {}년 {}월 {}일입니다.".format(year, month, day))

date_string = "제 생일은 {}년 {}월 {}일입니다."

print(date_string.format(year, month, day))

# 추가 팁 ! 만약 다음날을 출력하고 싶다면? 

print(date_string.format(year, month, day + 1))
# 결과값 제 생일은 1987년 5월 27일입니다.

 

문자열 포맷팅에서 나열된 값들의 출력 순서를 변경할 수도 있다. 순서를 지정할 때는 {1}이 아닌 {0}부터 시작한다. 원래 프로그래밍을 할 때에는 1이 아닌 0부터 시작한다는 점도 알아두어야 한다.

 

# 저는 당근, 오이, 수박을 좋아합니다.

print("저는 {}, {}, {}을 좋아합니다.".format("당근", "오이", "수박"))

# 저는 오이, 당근, 수박을 좋아합니다.

print("저는 {1}, {0}, {2}을 좋아합니다.".format("당근", "오이", "수박"))

# 2 곱하기 3은 6.000입니다. (결과값은 소수점 셋째자리까지 반올림)

ex_string = "{0} 곱하기 {1}은 {2:.3f}입니다."
num_1 = 2
num_2 = 3
print(ex_string.format(num_1, num_2, num_1 * num_2))
반응형

댓글