옛날../파이썬
[파이썬] 문자열 포매팅 코드
도로롱주
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) |
%o | 8진수 |
%x | 16진수 |
%% | 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는 자동으로 % 뒤에 있는 값을 문자열로 바꾸기 때문이다.