변수를 문자열에 삽입하거나 형식을 지정하는 문자열 포맷팅 기법
안녕하세요! 이번 글에서는 문자열 을 포맷팅하는 방법에 대해 알아보겠습니다
변수를 문자열에 삽입하거나 형식을 지정하는 문자열 포맷팅에 대한 내용을 다룰 예정입니다.
1) %연산자를 사용한 포맷팅
%연산자를 사용한 포맷팅 사용 방법
먼저 변수를 삽입할 곳에 %s %d %f 등 데이터 타입에 맞게 %와 타입을 명시해준 후 % 변수명 으로 포맷팅 하는 방식입니다.
>>> name = "홍길동"
>>> age = 10
>>> profile = "제 이름은 %s 이고 나이는 %d살입니다." % (name, age)
>>> profile
제 이름은 홍길동 이고 나이는 18살입니다.
2. format() 메서드를 이용한 포맷팅
format 메서드를 사용하면 formatting 하고 싶은 위치에 중괄호를 사용하여 변수 값을 삽입할 수 있습니다.
타입을 명시하지 않아도 되니까 1번 보다는 깔끔한 방법입니다.
순서를 정해서 사용할 수 있고 중복되는 부분에 같은 숫자를 넣어서 여러번 사용도 가능합니다.
>>> name = "홍길동"
>>> age = 10
>>> profile = "제 이름은 {} 이고 나이는 {} 살입니다.".format(name,age)
>>> profile
'제 이름은 홍길동 이고 나이는 10 살입니다.'
>>> profile = "제 이름은 {} 이고 나이는 {} 살입니다.".format(name,age + 3)
>>> profile
'제 이름은 홍길동 이고 나이는 13살 입니다.'
>>> # 순서를 지정할 수 있다.
>>> profile = "제 이름은 {0} 이고 나이는 {1} 살입니다.".format(name,age)
>>> profile
'제 이름은 홍길동 이고 나이는 10 살입니다.'
>>> profile = "제 이름은 {1} 이고 나이는 {0} 살입니다.".format(name,age)
>>> profile
'제 이름은 10 이고 나이는 홍길동 살입니다.'
>>> write_name = "이름 {0} {0} {0} 나이 {1} {1} {1}".format(name,age)
>>> write_name
'이름 홍길동 홍길동 홍길동 나이 10 10 10'
3) f-strings 를 이용한 포맷팅
f-string 은 최근에 도입된 가장 간편한 방법으로 문자열 앞에 f를 붙이고 중괄호 안에 변수명을 삽입 해주면 됩니다.
또한 변수의 자료형에 따라 형식을 자동으로 지정하며 정렬하는 기능을 활용할 수도 있습니다.
>>> name = "홍길동"
>>> age = 10
>>> profile = f"제 이름은 {name} 이고 나이는 {age}살 입니다."
>>> profile
'제 이름은 홍길동 이고 나이는 10살 입니다.'
>>> profile = f"제 이름은 {name} 이고 나이는 {age+3}살 입니다."
>>> profile
'제 이름은 홍길동 이고 나이는 13살 입니다.'
정리)
파이썬에서 문자열을 삽입하는 방식에는 여러가지가 있지만 크게 3가지가 있다.
1) % 연산자 사용하기
% 형식 지정 후 뒤에서 % 변수명 으로 포맷팅한다.
2) .format() 메서드 사용하기
{}를 사용하여 순서를 지정할 수 있다 뒤에서 변수명으로 포맷팅한다.
3) f-strings
문자열 앞에 f를 붙이고 중괄호 안에 변수명을 삽입한다.
마치면서)
파이썬 문자열 포맷팅은 코드의 가독성을 높이고 데이터를 효율적으로 처리하는데 매우 유용합니다.
왜냐하면 특정 형식의 form을 만들어두고 들어가는 변수만 적절하게 바꿔주면 사용가능하기 때문입니다.
이로써 파이썬 문자열 포맷팅에 대한 내용을 마치겠습니다.
다음 글에서도 유용한 파이썬 팁과 기능을 소개하도록 하겠습니다
감사합니다.
'파이썬 > 사용법' 카테고리의 다른 글
[python] 리스트 메서드 정리 (0) | 2023.07.18 |
---|---|
[python] 리스트 생성 및 접근 (0) | 2023.07.17 |
[python] 문자열 메서드 1줄 정리 (0) | 2023.07.17 |
[python] 문자열 메서드 정리 (0) | 2023.07.16 |
[python] 문자열 슬라이싱 인덱싱 [문자열 추출하기] (0) | 2023.07.15 |