SMALL
문자열 포매팅
1. 숫자 바로 대입
"I eat %d apples." % 3
'I eat 3 apples.'
결괏값을 보면 알겠지만, 위 예제는 문자열 안에 정수 3을 삽입하는 방법을 보여 준다.
문자열 안의 숫자를 넣고 싶은 자리에 %d 문자를 넣어 주고 삽입할 숫자 3은 가장 뒤에 있는 % 문자 다음에 써 넣었다. 여기에서 %d는 ‘문자열 포맷 코드’라고 부른다.
2. 문자열 바로 대입
"I eat %s apples." % "five"
'I eat five apples.'
숫자를 넣기 위해서는 %d, 문자열을 넣기 위해서는 %s를 써야 한다.
문자열을 대입할 때는 반드시 큰따옴표나 작은따옴표를 써야 한다.
3. 숫자 값을 나타내는 변수로 대입
number = 3
"I eat %d apples." % number
'I eat 3 apples.'
4. 2개 이상의 값 넣기
>>> number = 10
>>> day = "three"
>>> "I ate %d apples. so I was sick for %s days." % (number, day)
'I ate 10 apples. so I was sick for three days.'
2개 이상의 값을 넣으려면 마지막 % 다음 괄호 안에 쉼표(,)로 구분하여 각각의 값을 넣어 주면 된다.
문자열 포맷 코드
코드 | 설명 |
%s | 문자열(String) |
%c | 문자 1개(character) |
%d | 정수(Integer) |
%f | 부동소수(floating-point) %0.4f는 소수점 4번째까지 나타내라는 뜻 |
%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는 자동으로 % 뒤에 있는 3이나 3.234와 같은 값을 문자열로 바꾸어 대입하기 때문에 이런 것을 생각하지 않아도 된다.
◆ 포매팅 연산자 %d와 %를 같이 쓸 때는 %%를 쓴다
>>> "Error is %d%." % 98
결괏값으로 당연히 "Error is 98%."가 출력될 것이라고 예상하겠지만, 파이썬은 '형식이 불완전하다'라는 오류 메시지를 보여 준다. 그 이유는 ‘문자열 포맷 코드인 %d와 %가 같은 문자열 안에 존재하는 경우, %를 나타내려면 반드시 %%를 써야 한다’라는 법칙이 있기 때문이다. 하지만 문자열 안에 %d와 같은 포매팅 연산자가 없으면 %는 홀로 쓰여도 상관없다. 따라서 위 예를 제대로 실행하려면 다음과 같이 작성해야 한다.
>>> "Error is %d%%." % 98
'Error is 98%.'
format 함수
LIST
'Today I learned' 카테고리의 다른 글
2024.11.22 TIL(AI 9기) (0) | 2024.11.22 |
---|---|
2024.11.21 TIL(AI 9기) (1) | 2024.11.21 |
2024.11.19 TIL(AI 9기) (0) | 2024.11.19 |
2024.11.18 TIL(AI 9기) (1) | 2024.11.18 |
Pythone3 Day 4 연산, 조건문 (0) | 2024.11.15 |