반응형
250x250
Notice
Recent Posts
Recent Comments
Link
이롭게 현명하게
[Python]문자열 포매팅 본문
728x90
반응형
목차
문자열 포매팅
문자열 포맷 코드
포맷 코드와 숫자 함께 사용하기
format함수
f문자열 포매팅
<정리>
코드 | 설명 |
%s | 문자열(String) |
%c | 문자 1개(character) |
%d | 정수(Integer) |
%f | 부동소수(floating-point) |
%o | 8진수 |
%x | 16진수 |
%% | Literal % (문자 % 자체) |
%10s | 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽으로 정렬하고 그 앞의 나머지는 공백으로 남겨둔다. |
%-10s | 전체 길이가 10개인 문자열,왼쪽 정렬,나머지는 공백 |
%10.4f | 문자열의 길이가 10인소수점 네번째 자리까지 나타낸다. |
print("I eat {0} apples.".format(3)) #'I eat 3 apples.'
print("I eat {0} apples.".format("five")) #'I eat five apples.'
number = 3
print("I eat {0} apples.".format(number))#'I eat 3 apples.'
number = 4
day = "three"
print("I ate {0} apples. so I was sick for {1} days".format(number,day))
#'I ate 4 apples. so I was sick for three days'
print("I ate {number} apples. so I was sick for {day} days".format(number=10,day=3))
#'I ate 10 apples. so I was sick for 3 days'
print("I ate {0} apples. so I was sick for {day} days".format(10,day=3))
#'I ate 10 apples. so I was sick for 3 days'
print("{0:<10}".format("smiles"))#'smiles '
print("{0:>10}".format("smiles"))#' smiles'
print("{0:^10}".format("smiles"))#' smiles '
print("{0:=^10}".format("hi"))#'====hi===='
print("{0:=<10}".format("hi"))#'hi========'
print("{0:=>10}".format("hi"))#'========hi'
y = 3.141592
print("{0:0.4f}".format(y))#'3.1416'
print("{0:10.4f}".format(y))#' 3.1416'
print("{{and}}".format())#'{and}'
[문자열 포매팅]
문자열 포매팅 : 문자열 안에 어떤 값을 삽입하는 방법
c언어의 형식 문자와 비슷하다.
- 숫자 바로 대입
- 문자열 바로 대입
- 숫자 값을 나타내는 변수로 대입
- 2개 이상의 값 넣기
print("I eat %d apples."%3) # 숫자 바로 대입
print("I eat %s apples."%"five") # 문자열 바로 대입
number = 3
print("I eat %d apples."%number) # 숫자 값을 나타내는 변수로 대입
number = 10
day = "three"
print("I ate %d apples. so I was sick for %s days."%(number,day)) # 2개 이상의 값 넣기
[문자열 포맷 코드]
코드 | 설명 |
%s | 문자열(String) |
%c | 문자 1개(character) |
%d | 정수(Integer) |
%f | 부동소수(floating-point) |
%o | 8진수 |
%x | 16진수 |
%% | Literal % (문자 % 자체) |
이때 %s 포맷 코드는 어떤 형태의 값이든 변환해 넣을 수 있다.
%s 는 자동으로 %뒤에 있는 값을 문자열로 바꾸기 때문이다.
print("I have %s apples."%3)
print("I have %s apples."%3.14)
[포맷 코드와 숫자 함께 사용하기]
- 정렬과 공백
- 소수점 표현하기
%10s : 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽으로 정렬하고 그 앞의 나머지는 공백으로 남겨둔다.
%-10s : 전체 길이가 10개인 문자열,왼쪽 정렬,나머지는 공백
%0.4f : .4는 소수점 네번째 자리까지 나타내고싶은경우만
%10.4f : 소수점 네번째 자리까지만 표시, 전체 길이가 10개
# 정렬과 공백 #
print("%10s"%"hi")
#결과
# hi
print("%-10sjane"%"hi")
#hi jane
# 소수점 표현 #
# 소수점 네번째 자리까지만
print("%0.4f" % 3.141592) #3.1416
print("%10.4f" % 3.141592) # 3.4213
[format함수]
문자열의 format 함수를 사용하면 좀 더 발전된 스타일로 문자열 포맷을 지정할 수 있다.
- 숫자 바로 대입하기
- 문자열 바로 대입하기
- 숫자 값을 가진 변수로 대입하기
- 2개 이상의 값 넣기
- 이름으로 넣기
- 인덱스와 이름을 혼용해서 넣기
- 왼쪽 정렬
- 오른쪽 정렬
- 가운데 정렬
- 공백 채우기
- 소수점 표현하기
- { 또는 } 문자 표현하기
print("I eat {0} apples.".format(3)) #'I eat 3 apples.'
print("I eat {0} apples.".format("five")) #'I eat five apples.'
number = 3
print("I eat {0} apples.".format(number))#'I eat 3 apples.'
number = 4
day = "three"
print("I ate {0} apples. so I was sick for {1} days".format(number,day))
#'I ate 4 apples. so I was sick for three days'
print("I ate {number} apples. so I was sick for {day} days".format(number=10,day=3))
#'I ate 10 apples. so I was sick for 3 days'
print("I ate {0} apples. so I was sick for {day} days".format(10,day=3))
#'I ate 10 apples. so I was sick for 3 days'
print("{0:<10}".format("smiles"))#'smiles '
print("{0:>10}".format("smiles"))#' smiles'
print("{0:^10}".format("smiles"))#' smiles '
print("{0:=^10}".format("hi"))#'====hi===='
print("{0:=<10}".format("hi"))#'hi========'
print("{0:=>10}".format("hi"))#'========hi'
y = 3.141592
print("{0:0.4f}".format(y))#'3.1416'
print("{0:10.4f}".format(y))#' 3.1416'
print("{{and}}".format())#'{and}'
[f문자열 포매팅]
파이썬 3.6버전 부터는 f문자열 포매팅 기능을 사용할 수 있다. 3.6 미만의 버전에서는 사용할 수 없다.
name = '홍길동'
age = 30
print(f'나의 이름은 {name}입니다. 나이는 {age}입니다.')
print(f'나의 이름은 {name}입니다. 나이는 {age+1}입니다.')
print(f'나의 이름은 {name}입니다. 나이는 {age-2}입니다.')
# 딕셔너리
d = {'name':'홍길동', 'age':30}
print(f'나의 이름은 {d["name"]}입니다. 나이는 {d["age"]}입니다.')
# 정렬
print(f'{"hi":<10}') # 왼쪽 정렬
print(f'{"hi":^10}') # 가운데 정렬
print(f'{"hi":>10}') # 오른쪽 정렬
#공백 채우기
print(f'{"hi":=<10}') # 왼쪽 정렬
print(f'{"hi":!^10}') # 가운데 정렬
print(f'{"hi":->10}') # 오른쪽 정렬
# 소수점
y = 3.42134234
print(f'{y:0.4f}')
print(f'{y:10.4f}')
#문자열에서 {} 문자 표시
print(f'{{ and }}')
문자열 앞에 f 접두사를 붙이면 f 문자열 포매팅 기능을 사용할 수 있다.
잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊
댓글과 좋아요는 큰 힘이 됩니다!
더보기
[ 참고자료 ]
728x90
반응형
'Python' 카테고리의 다른 글
[Python] 파이썬 리스트 (0) | 2023.03.08 |
---|---|
[Python] 파이썬 문자열 관련 함수 (0) | 2023.03.07 |
[Python] 문자열 인덱싱과 슬라이싱 (0) | 2023.03.03 |
[Python] 문자열 연산하기 (0) | 2023.03.02 |
[Python] 파이썬 문자열 (0) | 2023.02.28 |
Comments