>백엔드 개발 >파이썬 튜토리얼 >Python에는 Ruby와 같은 문자열 보간 기능이 있습니까?

Python에는 Ruby와 같은 문자열 보간 기능이 있습니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-30 04:27:15895검색

Does Python Have String Interpolation Like Ruby's?

Python은 Ruby와 비슷한 문자열 보간을 제공합니까?

Ruby에서 문자열 보간을 사용하면 문자열에 표현식을 삽입할 수 있어 코드 가독성이 향상됩니다. Ruby 문자열 보간의 예:

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

Python 개발자의 경우 해당 문자열 연결이 장황해 보일 수 있습니다.

Python 3.6 이상의 Python 문자열 보간

다행히 Python 3.6에서는 다음과 유사한 리터럴 문자열 보간법을 도입했습니다. 루비. Python 3.6에서는 "f-문자열"을 사용하여 표현식을 포함할 수 있습니다.

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

Python 3.6 이전 대안

Python 3.6 이전에는 다음 옵션을 고려하세요.

  • % 연산자: 문자열 보간에는 % 연산자를 사용합니다. 첫 번째 피연산자는 보간할 문자열이고 두 번째 피연산자는 필드 이름을 값에 매핑하는 "매핑"을 포함할 수 있습니다. locals()를 사용하여 매핑을 생성할 수 있습니다.
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? %(name)s." % locals())
  • .format() 메서드: .format() 메서드를 사용하여 문자열을 보간합니다.
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))
  • string.Template 클래스: 문자열 보간을 위해 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으로 문의하세요.