웹 개발 메모장

[파이썬] 문자열 포매팅 코드 본문

옛날../파이썬

[파이썬] 문자열 포매팅 코드

도로롱주 2017. 11. 24. 13:09




'오늘 날짜는 %d년 %d월 %d일 입니다.' %(year, month, day)



문자열을 나타내는 방법중 하나 입니다.



예를 들어 


1
print('오늘 날짜는 2017년 11월 24일 입니다.')
cs


위와 같은 코드를 다르게 표현하면


1
2
3
4
year = 2017
month = 11
day = 27
print('오늘 날짜는 '+ str(year) +'년 '+str(month)+'월 '+str(day)+'일 입니다.')
cs


이렇게 표현 할 수 있습니다.



이것을 포매팅을 이용해 표현하면


1
2
3
4
year = 2017
month = 11
day = 27
print('오늘 날짜는 %d년 %d월 %d일 입니다.' %(year, month, day))
cs


이렇게 됩니다.


여기서 %d 는 이 자리에 정수형 값이 들어온다는 뜻이고 다른 포맷의 코드들은 아래와 같이 있습니다.


코드설명
%s문자열 (String)
%c문자 1개(character)
%d정수 (Integer)
%f부동소수 (floating-point)
%o8진수
%x16진수
%%Literal % (문자 % 자체)



%s

이 코드는 어떤 형태의 값이든 변환해 넣을 수 있다. 무슨 말인지 예를 통해 확인해 보자.

>>> "I have %s apples" % 3
'I have 3 apples'
>>> "rate is %s" % 3.234
'rate is 3.234'

3문자열 안에 삽입하려면 %d를 사용하고, 3.234를 삽입하려면 %f를 사용해야 한다. 하지만 %s를 사용하면 이런 것을 생각하지 않아도 된다. 왜냐하면 %s는 자동으로 % 뒤에 있는 값을 문자열로 바꾸기 때문이다.



Comments