ホームページ > バックエンド開発 > Python チュートリアル > Python には Ruby のような文字列補間がありますか?

Python には Ruby のような文字列補間がありますか?

Susan Sarandon
リリース: 2024-11-30 04:27:15
オリジナル
890 人が閲覧しました

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-strings」により次の式を含めることができます。

name = "Spongebob Squarepants"
print(f"Who lives in a Pineapple under the sea? {name}.")
ログイン後にコピー

Python 3.6 より前の代替手段

Python 3.6 より前では、次のオプションを検討してください。

  • %演算子: 文字列補間には % 演算子を使用します。最初のオペランドは補間される文字列で、2 番目のオペランドにはフィールド名を値にマッピングする「マッピング」を含めることができます。マッピングは、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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート