f-string
python
파이썬 f-string 포멧팅
%연산자나 함수가 아니라 새로본 포멧팅 방식
사용 예시
epoch = 0
loss = 1
print(f"Loss after epoch {epoch}: {loss}")
위와 같이 작성하면 Loss after epoch 0: 0.70199928 -> 이런 형태로 나온다.
딥러닝 수업에서 100 epoch 마다 weight나 bias, loss등을 출력하는데 깔끔하게 쓰기 좋았다.
다른 효과
변수명 간단히 쓰기
아래와 같이 중괄호 안에 변수와 =을 붙이면, {bugs=}를 쓰면 출력 시 입력한 것과 그 값이 옆에 나온다.
>>> print(f'Debugging {bugs=} {count=} {area=}')
Debugging bugs='roaches' count=13 area='living room'
딕셔너리 넘겨서 키로 값 접근하기
포맷할 변수 위치에 이름으로 지정할 수 있음 [] 대괄호 사용
>>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}
>>> print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; '
'Dcab: {0[Dcab]:d}'.format(table))
Jack: 4098; Sjoerd: 4127; Dcab: 8637678
정렬
’:’ 뒤에 정수를 전달하면 해당 필드의 최소 문자 폭이 된다.
>>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}
>>> for name, phone in table.items():
print(f'{name:10} ==> {phone:10d}')
Sjoerd ==> 4127
Jack ==> 4098
Dcab ==> 7678
:> : 오른쪽 정렬
:< : 왼쪽 정렬
:^ : 가운데 정렬
:> : 오른쪽 정렬 후 *로 채움
:< : 왼쪽 정렬 후 로 채움
:^ : 가운데 정렬 후 *로 채움
출처1 https://docs.python.org/ko/3/tutorial/inputoutput.html