変数を展開する必要がある大きなマルチライン文字列を含む部分を含むPythonスクリプトを作成しています。私は、Python 2.6やPython 3でそれを次のようにやってに慣れている:Python:変数付きのマルチライン文字列をフォーマットする
message = """
Hello, {foo}
Sincerely, {bar}
"""
print (message.format(foo = "John", bar = "Doe"))
しかし、職場でのサーバは、文字列をサポートしていないのPython(2.3.4)の古いバージョンを実行しています。フォーマット。古いPythonバージョンでこれを行う方法は何ですか?あなたは%演算子を使ってそれを行うことができますか?私はこれを試してみましたが、動作していないようでした:
message = """
Hello, %(foo)
Sincerely, %(bar)
""" % {'foo': 'John', 'bar': "Doe"}
私は複数行の文字列を使用せずに、単に行うことができますが、私はフォーマットする必要があり、メッセージは、多くの変数を持つ非常に大きいです。 Python 2.3.4でこれを行う簡単な方法はありますか?あなたがタイプミスを持っている(それでもPythonの初心者、これはばかな質問であればとても残念。)
Gotcha、あなたとMattのおかげです。それが私が見逃していたものです、今は素晴らしい作品です。 – Nate
変数を連結するのはどうですか? –
@AllDani:あなたが何を求めているのか分かりません。あなたの質問は、 "どのように私は2つの変数を含む文字列を書式設定するのですか?' ''Hello%(foo)s%(bar)s'%{'foo' : "x"、 "bar": 'y'} ''(または、新しい '' str.format''アプローチを使うことができます。 。) –