본문 바로가기

Python/실습

문자열 formating 실습하기

예를 들어 

a=100
b=200

print(str(a)+'+'+str(b)+'='+str(a+b))

라는 코드가 있다. 

실행시키기에는 문제가 없지만 조금 복잡해 보일 수 있기에 format() 함수를 사용하여 간단하게 만들어 보겠다.

 

res='{}+{}={}'.format(a,b,a+b)
print(res)

중괄호를 이용하여 구조를 만들고 format()함수에 변수를 집어 넣어 간단하게 만들어 보았다.

 

string_te='{1}+{0}={2}' #중괄호 안에 숫자는 인덱스
print(string_te.format(a,b,a+b))

중괄호 안에 숫자를 넣어 인덱스로 표현도 가능하다.

 

string_tem='{name}+{posi}={ceo}' #문자열로 만들기
print(string_tem.format(posi=a,ceo=b,name=a+b))

문자열을 집어 넣어 표현도 가능하다.

이와 같은 경우에는 변수가 많을 때 사용하기 좋다.

 

string_temp='{0:4d}+{1:4d}={2:4d}' #자릿수 나타내기!***(4칸,3칸,2칸)
for idx in range(1,101,5):
    print(string_temp.format(idx,idx*5,idx*10))

이와 같은 구조는 자릿수를 설정함으로써 결과를 깔끔하게 정리하기 위해 만든다.

위 코드를 실행시키면

다음과 같이 깔끔하게 정렬이 되는 방면

string_temp='{0}+{1}={2}'
for idx in range(1,101,5):
    print(string_temp.format(idx,idx*5,idx*10))

다음과 같이 자리수를 설정하지 않고 코드를 실행시킬 경우 

다음과 같이 정렬이 되지 않고 결과가 나타나는 걸 볼 수 있다.

 

 

위와 같은 과정들을 진행해 왔지만 더욱 간단하게 포매팅을 진행할 수 있는 방법이 있다.

바로 f.string인데

print(f'{a}+{b}+{a+b}')

다음과 같이 앞에 f를 추가함 으로써 중괄호 안에 바로 변수를 입력할 수 있다.

 

다만 중괄호를 그대로 표현하고 싶다면 어떻게 해야할까?

 

print(f'{{{a}}}+{{{b}}}+{{{a+b}}}')

다음과 같이 중괄호를 두번 씌우면

중괄호를 포함한 결과를 나타낼 수 있다.

'Python > 실습' 카테고리의 다른 글

파일 읽기 실습하기  (0) 2023.09.20
제어문 응용 실습하기  (0) 2023.09.19
조건문 실습하기  (0) 2023.09.19