본문 바로가기
공부/Python

[python]문자열 만드는 방법 4가지 (+, % ,str.format, f-string)

by happyeuni 2021. 7. 28.

str concaternateion

문자열은 + 로 합치고

문자열과 숫자는 ,로 합친다 (공백 자동 생성)

fruit = "apples"
color = "red"
num = 5 
print("My favorite fruit is " + fruit + ". Its color is " + color + ". I have" ,num, ".")

 

%operator

c언어와 유사하게 %타입을 쓰고 문장 끝에 %()를 이용하여 지정. 타입을 정확히 알고 있어야 함

fruit = "apples"
color = "red"
print("My favorite fruit is %s. Its color is %s." % (fruit,color))

 

str.format()

{} 와 .format() 형식으로 쓰는데 여러 형태 가능.

fruit = "apples"
color = "red"
num = 5

print("My favorite fruit is {}. Its color is {}. I have {}.".format(fruit,color,num))

print("My favorite fruit is {}. Its color is {}. I have {}.".format('apples','red',5))

print("My favorite fruit is {fruit}. Its color is {color}. I have {num}.".format(fruit='apples',color='red',num=5))

print("My favorite fruit is {1}. Its color is {2}. I have {0}.".format(num, fruit, color))
print("My favorite fruit is {1}. Its color is {2}. I have {0}.".format(5, 'apples', 'red'))

 

f-string

앞에 f 를 붙이고 {변수명}

- 중괄호 출력 {{ }} 연속 두개 사용 -> f-string의 중괄호까지 총 3개의 중괄호

- 산술연산 가능

fruit = "apples"
color = "red"
num = 5
print(f"My favorite fruit is {fruit}. Its color is {color}. I have {num}.")

a = 2
b = 3
print(f"sum : {a+b}")

- 정렬

   {변수:정렬옵션}

    왼쪽 정렬 <  오른쪽 정렬 >  가운데 정렬 ^

 

s1 = 'left'
s2 = 'mid'
s3 = 'right'
print(f"{s1:<10}")
print(f"{s2:^10}")
print(f"{s3:>10}")

10자리중 왼쪽으로, 가운데로, 오른쪽으로 정렬한 결과

 

댓글