ホームページ >バックエンド開発 >Python チュートリアル >Python は文字列補間においてどのようにして Ruby に追いついたのでしょうか?

Python は文字列補間においてどのようにして Ruby に追いついたのでしょうか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-19 19:50:03569ブラウズ

How did Python catch up to Ruby in String Interpolation?

文字列補間に対する Python のアプローチ

Ruby は文字列補間を実行する便利な方法を提供しますが、Python には当初同様のメカニズムがありませんでした。ただし、Python 3.6 では、Ruby のアプローチに合わせてリテラル文字列補間が導入されました。

例:

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

Python 3.6 より前のオプション

Python 3.6 より前、Python は文字列補間の代替手段を提供していました:

  • % 演算子: Ruby のハッシュと同様に、フィールド名を値にマッピングする辞書を使用します。
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? %(name)s." % locals())
  • .format() メソッド: プレースホルダーに値を代入します。
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))
  • 文字列。テンプレート クラス: 置換にテンプレートとプレースホルダーを使用します。
tmpl = string.Template("Who lives in a Pineapple under the sea? $name.")
print(tmpl.substitute(name="Spongebob Squarepants"))

結論として、Python 3.6 は文字列補間のための簡潔で Ruby のような方法を提供しますが、以前の Python バージョンはさまざまな代替アプローチを提供します。同様の結果が得られます。

以上がPython は文字列補間においてどのようにして Ruby に追いついたのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。