파이썬

4. 문자열 자료형 (문자열 포매팅, f-string)

미스터 한뺑 2022. 7. 28. 15:09
반응형

1. 문자열 포매팅

문자열은 포매팅이라는 것이 있다. 두 문장이 주어질 때 , 문장의 숫자만 달라지고 문자열을 같은 때 , 즉 문자열 안의 특정한 값을 바꿔야할 경우가 있을때 이것을 가능하게 해주는 게 포매팅이다. 

>>> "I eat %d apples." % 3
'I eat 3 apples.'

문자열 안에 쓰고 %d를 적고 문자열 밖에 %3을 쓴다. 여기서 %d를 포맷코드라 부른다. 당연히 문자열도 집어 넣을수 있다 . 똑같은 방식으로 문자열은 %d가 아닌 %s를 넣고 마지막에 3대신 문자열을 넣어주면 된다.

 

 2. 변수로 대입

값을 그대로 넣어서 사용할 수 있지만 변수로도 가능하다 .

>>> number = 3
>>> "I eat %d apples." % number
'I eat 3 apples.'

 

3. 문자열 포맷코드

3. format 함수를 이용한 포매팅

문자열의 format함수를 사용하면 쉽게 쓸수 있다. 

3 -1 숫자 바로 대입하기

>>> "I eat {0} apples".format(3)
'I eat 3 apples

 

3 -2 문자열 바로 대입하기

>>> "I eat {0} apples".format("five")
'I eat five apples'

 

3 -2. 2개의 값을 대입하기

>>> number = 10
>>> day = "three"
>>> "I ate {0} apples. so I was sick for {1} days.".format(number, day)
'I ate 10 apples. so I was sick for three days.

2개 이상의 값을 넣을 경우 format(a,b...)에 문자열 인덱싱같이 입력값으로 순서에 맞게 바뀐다. 그래서 한개의 값을 주어질때 {0}을 사용하고 2개이상부터 {0},{1}으로 문자열 안에 넣어준다.

 

3-3. 변수를 통해 대입하기 

>>> "I ate {number} apples. so I was sick for {day} days.".format(number=10, day=3)
'I ate 10 apples. so I was sick for 3 days.'

값으로 대입을 했을때는 인덱스와 같이 번호가 주어져 반환이 됬지만 변수를 사용하면 변수의 값이 반환이된다.

 

4. f-string

>>> name = '홍길동'
>>> age = 30
>>> f'나의 이름은 {name}입니다. 나이는 {age}입니다.'
'나의 이름은 홍길동입니다. 나이는 30입니다.'

f-string은 변수를 중괄호 안에 넣어 값을 반환하는 문법이다. 반환할 문자열 앞에 f를 쓰면 된다.

 

f-string을 응용하면 정수를 더하거나 문자열을 곱할 수 있다.

name = '홍길동'
age = 30
f'나의 이름은 {name*2}입니다. 나이는 {age}입니다.'

>>나의 이름은 홍길동홍길동입니다. 나이는 30입니다.
>>> age = 30
>>> f'나는 내년이면 {age+1}살이 된다.'
'나는 내년이면 31살이 된다.'

 

반응형