CODING_연구소/Python

[파이썬(Python)강의] 9강 파이썬 문자열 포매팅

SOSABU 2025. 1. 16. 19:52
728x90
반응형

  문자열과 문자열을 하나로 연결할 때는 +연산자나 쉼표를 사용한다. +연산자를 사용하면 문자열 사이를 띄어 쓰지 않고 연결하지만, 쉼표를 사용하면 문자열 사이를 한 칸 띄어 쓴 채 연결한다. 문자열과 다른 자료형을 연결하려면 형변환을 해야 한다. 그런데 형변환 없이 문자열과 다른 자료형을 연결하는 방법이 있다. 원하는 위치에 특정한 값(또는 변수)을 넣어 나의 문자열로 표현하는 방법으로, 문자열 포매팅이라고 한다.

1. 서식 지정자 사용하기

  서식 지정자는 자료형을 표현하는 방법으로 % 뒤에 자료형을 나타내는 문자가 붙는다.

서식 시정자 의미
%d 정수
%f 실수
%c 문자
%s 문자열

  문자열과 다른 값을 연결하고 싶은 위치에 값의 자료형에 해당하는 서식 지정자를 넣는다. 그리고 문자열 다음에 %를 적고 한 칸 띄어서 값을 넣으면 문자열 중간에 서식 지정자 위치에 들어가서 출력된다.

print("나는%d살입니다." % 20)
print("나는%s을 좋아합니다." % "파이썬")
print("Apple은%c로 시작해요." % 'A')
print("나는%s색과%s색을 좋아해요." % ("파란", "빨간"))

print("I eat %d apples." % 3)
print("I eat %s apples." % "five")
print("너는%d살이고, 나는%s살이다." % (19, "스무"))

  문자열 안에 값을 2개 이상 넣고 싶다면 원하는 위치에 서식 지정자를 원하는 만큼 넣는다. 그리고 문자열에 넣을 값들을 쉼표로 구분한 후 소괄호로 감싸서 % 뒤에 넣는다. 그러면 값이 순서대로 문자열의 서식 지정자 위치에 들어간다.

2. format() 함수 하기

  문자열에서 값을 넣을 위치에 중괄호를 표시하고 뒤에 format(1, 2, ...)) 형태로 값을 입력한다. 그리고 점(.)으로 문자열과 format() 함수를 연결하면 값들이 문자열의 중괄호 부분에 들어간다.

print("나는{}살입니다.".format(18))
print("나는{}색과{}색을 좋아해요.".format("파란", "빨간"))
print("나는{0}색과{1}색을 좋아해요.".format("파란", "빨간"))
print("나는{1}색과{0}색을 좋아해요.".format("파란", "빨간"))

  문자열에 비어 있는 중괄호만 표시하면 값이 순서대로 들아가고, {0}, {1}처럼 인덱스를 넣으면 인덱스에 맞춰 {0}위치에는 값1, {1}위치에는 값2가 들어간다. 그래서 {1}, {0}처럼 순서를 뒤집어서 넣으면 값도 순서가 바뀌어서 나오게 된다.

print("나는{age}살이며{color}색을 좋아해요.".format(age=20, color="빨간"))
print("나는{age}살이며{color}색을 좋아해요.".format(color="빨간", age=20))

  중괄호에 이름을 넣고 format() 함수에 이름과 값을 정의하면 중괄호 위치에 이름에 해당하는 값이 들어가게 된다. 변수를 사용하는 것과 비슷하다.

2. f-문자열 사용하기

  f-문자열 사용 방법은 문자열 앞에 f를 추가하면 문자열이 나오기 전에 정의한 변수의 값을 문자열에서 사용할 수 있다.

age = 20
color = "빨간"
print(f"나는 {age}살이며 {color}색을 좋아해요.")

  코드를 보면 agecolor라는 변수를 정의한다. 그러고 나서 print()문에서 변수명을 중괄호로 감싸 문자열 안에 넣으면 앞에 정의한 변수의 값을 중괄호 위치에 넣어 문자열과 함께 출력한다.

728x90
반응형