1. f-string ?
파이썬 3.6 버전 이후부터 f-string 방법을 사용할 수 있습니다.
1.1 string formatting - 문자열 포매팅이란
문자열에서 특정 부분만 바꾸고 나머지 부분은 일정하다고 할 때, 문자열 포매팅을 이용해서 이쁘게 출력 할 수 있다.
1.2 f-string 이란 ?
f-string 의 모양은 f 와 {} 만 알면 됩니다. 문자열 맨 앞에 f 를 붙여주고, 중괄호 안에 직접 변수 이름이나 출력하고 싶은 것을 바로 넣으면 됩니다.
## 변수 값을 넣어주는 방식
# 문자열 맨 앞에 f 를 붙이고, 출력할 변수, 값을 중괄호 안에 넣습니다.
name = "yong hyeok"
age = 27
print(f"my name is {name} and i'm {age}.")
# 동일한 방법
profile = f"my name is {name} and i'm {age}."
print(profile)
# output
> my name is yong hyeok and i'm 27.
> my name is yong hyeok and i'm 27.
이러한 방식으로 맨 앞에 f 를 붙이고 중괄호 안에 변수 이름, 값을 넣으면 됩니다.
여기서 변수 이름, 값 은 정수, 실수, numpy, tensor, 등등 모두 가능
1.3 정리
1. 문자열 맨 앞에(따옴표 앞) f 를 붙인다.
2. 사용하고 싶은 변수, 값을 중괄호 앞에 넣는다.
2. %서식문자
2.1 % 서식문자의 모양은 % 기호 뒤에 자료형을 가리키는 문자가 옵니다.
아래의 세 가지만 알면 됩니다.
%s => 문자열
%d => 정수
%f => 실수
2.2 포매팅 해야할 변수 값이 두 개 이상일 경우
() 소괄호로 묶어주어 순서에 맞게 입력해주면 됩니다.
% 서식 문자를 이용한 문자열 포맷팅은 타입을 정해야 하기 때문에 불편한 점이 존재합니다 .
# % 서식문자
a = [x for x in range(10)]
b = [float(x) for x in a]
c = ["혁", "현", "태", "준"]
### integer
for idx, x in enumerate(a) :
print("integer element in list : %d 번째 : %d" % (idx, x))
>>>output
>>>
integer element in list : 0 번째 : 0
integer element in list : 1 번째 : 1
integer element in list : 2 번째 : 2
integer element in list : 3 번째 : 3
integer element in list : 4 번째 : 4
integer element in list : 5 번째 : 5
integer element in list : 6 번째 : 6
integer element in list : 7 번째 : 7
integer element in list : 8 번째 : 8
integer element in list : 9 번째 : 9
### float
for idx, x in enumerate(b) :
print("float element in list : %d 번째 : %f" % (idx, x))
>>> output
float element in list : 0 번째 : 0.000000
float element in list : 1 번째 : 1.000000
float element in list : 2 번째 : 2.000000
float element in list : 3 번째 : 3.000000
float element in list : 4 번째 : 4.000000
float element in list : 5 번째 : 5.000000
float element in list : 6 번째 : 6.000000
float element in list : 7 번째 : 7.000000
float element in list : 8 번째 : 8.000000
float element in list : 9 번째 : 9.000000
### string
for idx, x in enumerate(c) :
print("string element in list : %s 번째 : %s" % (idx, x))
>>> output
string element in list : 0 번째 : 혁
string element in list : 1 번째 : 현
string element in list : 2 번째 : 태
string element in list : 3 번째 : 준
3. format 함수
format 함수는 중괄호 {} 안에 포매팅을 지정하고 format 함수의 인자로 값들을 넣습니다.
{인덱스 0, 인덱스 1}.format(값0, 값1)
# 정수, 실수, 문자 타입을 지정하지 않아도 되기 때문에 더욱 편리함
for idx, x in enumerate(a) :
print("integer element in list : {0} 번째 : {1}".format(idx, x))
for idx, x in enumerate(b) :
print("float element in list : {0} 번째 : {1}".format(idx, x))
for idx, x in enumerate(c) :
print("string element in list : {0} 번째 : {1}".format(idx, x))
저자 개인적으로는 format > f string > % 서식문자 순으로 편리하고 많이 사용하는 것 같습니다.
'Programming > Python' 카테고리의 다른 글
[클래스] 비공개 속성 사용하기 (0) | 2023.03.12 |
---|---|
[클래스] 속성 사용하기 (0) | 2023.03.12 |
[클래스] Class 사용하기 (0) | 2023.03.12 |
모듈/패키지/라이브러리 (0) | 2022.03.31 |
if __name__ == "__main__" (0) | 2022.03.31 |