[python] 문자열 formatting

Hello World·2024년 10월 3일

PythonNotebook

목록 보기
8/13
post-thumbnail

print() 내장 함수, % 연산자

print('정수 연산: %d + %d = %d' % (5, 3, 5 + 3))
print('실수 연산: %.2f + %.2f = %.2f' % (5.0, 3.5, 8.5))  # 소수점 아래 2자리까지 표현
print('문자열: %s %s' % ('python', 'world'))
print('문자열: %s' % 100)
# 정수 연산: 5 + 3 = 8
# 실수 연산: 5.00 + 3.50 = 8.50
# 문자열: python world
# 문자열: 100

format() 메소드

a = 5
b = 3
print('a:{0} b:{1}'.format(a, b))
print('{0} + {1} = {1} + {0} = {2}'.format(a, b, a + b))
# a:5 b:3
# 5 + 3 = 3 + 5 = 8

f-string

  • f"문자열 출력 포멧" 형태
  • 보다 직관적으로 포멧을 지정할 수 있다.
  • 포맷 명세 문서
a, b, c = 123, 2/3, 'python'
print(f'a: {a}, b: {b:.2f}, c:{c}')
# a: 123, b: 0.67, c:python

r-string

  • 문자열 앞 r은 Raw String을 뜻한다.
  • 이스케이프 문자열을 그대로 출력하거나, json, html과 같은 문서에서 특수문자나 태그등을 변환하지 않고 그대로 사용할 목적이라면 스트링 앞에 r을 붙여 사용한다.
string = 'abc\nabc'  # 줄바꿈 됨
print(string)

rstring = r'abc\nabc'  # 줄바꿈 안됨
print(rstring)

rdata = r'C:\windows\Users\user'  # 이스케이프 문자열 그대로 출력
print(rdata)

# abc
# abc
# abc\nabc
# C:\windows\Users\user

0개의 댓글