>백엔드 개발 >파이썬 튜토리얼 >Python은 Ruby의 #{} 구문과 유사한 문자열 보간을 어떻게 달성하나요?

Python은 Ruby의 #{} 구문과 유사한 문자열 보간을 어떻게 달성하나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-07 04:40:02539검색

How does Python Achieve String Interpolation Similar to Ruby's #{} Syntax?

Ruby의 문자열 보간과 동일한 Python

Ruby에서 문자열 보간은 #{} 구문을 사용하여 수행됩니다. 예를 들면:

name = "Spongebob Squarepants"
puts "Who lives in a Pineapple under the sea? \n#{name}."

질문: Python에 문자열 보간을 위한 유사한 메커니즘이 있습니까?

답변:

Python 3.6부터 Ruby의 #{} 보간과 유사한 문자열 보간 구문이 도입되었습니다. Python 3.6 이상에서는 f-strings 구문을 사용하여 다음과 같이 표현식을 문자열에 포함할 수 있습니다.

name = "Spongebob Squarepants"
print(f"Who lives in a Pineapple under the sea? {name}.")

Python 3.6 이전에는 문자열 보간을 위해 % 연산자가 일반적으로 사용되었습니다. 첫 번째 피연산자는 보간할 문자열이고 두 번째 피연산자는 필드 이름을 보간할 값과 연결하는 "매핑"일 수 있습니다.

Python의 .format() 메서드를 사용하여 문자열 보간을 수행하려면:

name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))

마지막으로 string.Template 클래스는 대체 접근 방식을 제공합니다.

tmpl = string.Template("Who lives in a Pineapple under the sea? $name.")
print(tmpl.substitute(name="Spongebob Squarepants"))

위 내용은 Python은 Ruby의 #{} 구문과 유사한 문자열 보간을 어떻게 달성하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.