이것저것 기록

[python] print 문자열 formatting 본문

코린이/코딩 기초 & 알고리즘 공부

[python] print 문자열 formatting

anweh 2020. 10. 9. 17:32

print 함수는 엄청 엄청 자주 쓰게 되는 함수 중 하나다.

디버깅을 할 때나, 코드가 얼마나 진행됐는지, 등등 중간중간 코드 안에서 프로그램의 상태를 출력해야하는 일은 심심치 않게 발생한다.

그럴 때마다 출력할 정보들을 좀 더 *FACNY*하고 *ORGANIZED*한 형태로 프린트 할 때 필요한 것이 바로 문자열 formatting이다.

 

 

문자열 포맷팅에는 크게 세 종류가 있다. 

1. %-formatting

2. '{ }'.format()

3. f-String

이중에서도 새로운 python 문자열 포맷팅인 3번에 대해 포스팅 하려고 한다. 

2번과 사용법은 비슷하지만 코드가 훨씬 깔끔하다는 장점이 있다. 

 

f-string 사용법

import os 

path = 'C:/Users/user/Desktop/folder/'
os.chdir(path)
files = os.listdir(path)
for file in files:
    idx = files.index(file)
    print(f'{file} is working... index is {idx}')

먼저 변수값에 값을 대입한 후, 중괄호 {}에 해당 변수명을 넣어주면 된다. 

그리고 작은따옴표 맨 앞에 소문자 f나 대문자 F를 입력해준다. (코드 마지막줄)

나는 path에 있는 파일을 하나씩 복사하는 프린트문을 만들었다. 

for loop 안에서 각각의 index마다 어떤 파일명이 실행되고 있는지 출력해주는 코드다. 

실행 결과

변수 뿐만 아니라 숫자, 함수, 메소드 등 다양한 타입을 넣어 활용할 수 있다. 

def uppercase(lower_case_list):
    
    low = lower_case_list
    upper = []
    for i in low:
        up = i.upper()
        upper.append(up)
    
    return upper


low_fruits = ['apple', 'banana', 'kiwi', 'lemon', 'strawberries']


print(f'fruits in lowercase: {low_fruits}')
print(f'fruits in uppercase: {uppercase(low_fruits)}')

low_fruits라는 리스트에 있는 소문자 과일들을 uppercase()라는 함수에 넣어서

대문자 과일로 바뀐 리스트를 출력하는 코드이다. 

실행 결과

 

 

Comments