문자열.format() method & f-string

장현웅·2023년 8월 25일
0

문자열 .format() 메서드


  • 파이썬에서 문자열을 포맷팅하는데 사용하는 기술

  • 문자열 안에 변수나 값을 삽입하거나 형식을 지정하여 출력할 수 있다.

    • 문자열 내에 중괄호를 사용하여 값을 삽입할 위치를 지정하고 메서드에 전달되는 값은 해당 위치에 순서대로 대체된다.
      print("{} : {}".format("내 이름은", "이하늬"))

      a = "내 이름은"
       b = "이~하~늬"
       
       print("{} : {}".format(a, b))
       # 내 이름은 : 이~하~늬
    • 중괄호 안에 인덱스나 변수 이름을 이용하여 값의 위치를 지정할 수 있다.

      # 인덱스
      name = "이하늬"
      age = "20"
      myself = "My name is {1}, I'm {0}.".format(age, name)
      
      print(myself)
      # My name is 이하늬,I'm 20.
      # 변수 이름
      
      name1 = "이하늬"
      name2 = "초롱이"
      age = "20"
      myself = "My name is {n}, I'm {a}. You are {c}".format(n=name1, a=age, c=name2)
      
      print(myself)
      # My name is 이하늬, I'm 20. You are 초롱이
    • 중괄호 안에 리스트의 요소를 인덱스를 이용하여 넣어줄 수 있다.

      arr = ['사과','딸기','포도','배']
      fruit = "내가 좋아하는 과일은 {a}, 싫어하는 과일은 {b}".format(a=arr[0], b=arr[2])
      
      print(fruit)
      # 내가 좋아하는 과일은 사과, 싫어하는 과일은 포도
    • 중괄호 안에 딕셔너리의 키 값을 이용하여 밸류 값을 넣어줄 수 있다.

      dict = {"name" : "이하늬", "age" : "20"}
      myself = "My name is {},I'm {}.".format(dict["name"], dict["age"])
      
      print(myself)
      # my name is 이하늬, I'm 20

f-string f"{}" (f = formatted)


  • 파이썬에서 문자열 포맷팅을 간단하고 가독성 높게 처리하기 위한 방법 중 하나.

  • 문자열 안에 변수나 표현식을 쉽게 삽입할 수 있다.

    • 기존의 문자열 포맷팅 방법에 비해 f-string은 더 직관적이며 코드를 더욱 간결하게 만들어 준다.

      # 기존
      name = "이하늬"
       age = "20"
      
       print("my name is " + name + ", I'm " + age)
       # my name is 이하늬, I'm 20
      # f-string
      
       name = "이하늬"
        age = "20"
        
        print(f"my name is {name}, I'm {age}")
        my name is 이하늬, I'm 20
    • 간단한 표현식을 사용하여 변수를 가공해서 출력할 수 있다.

      num1 = 10
       num2 = 20
       
       result = f"{num1}과 {num2}의 합은 {num1 + num2}이다."
       
       print(result)
       # 10과 20의 합은 30이다.

문자열 .format() 메서드 & f-string


  • f-string
sing = "know what you like boy"
hype_boy = f"커즈 아아아아 {sing}"

print(hype_boy)
# 커즈 아아아아 know what you like boy    
  • 문자열 .format() 메서드
sing = "know what you like boy"
hype_boy = "커즈 아아아아 {0}".format(sing)

print(hype_boy)
# 커즈 아아아아 know what you like boy 

# f-string이 더 직관적이다.

0개의 댓글