1. ホーム
  2. パイソン

[解決済み】Pythonで長い行を折り返す [重複]。

2022-04-20 06:42:58

質問

Pythonで長い行をインデントを犠牲にすることなく折り返すには?

例えば

def fun():
    print '{0} Here is a really long sentence with {1}'.format(3, 5)

これが推奨される79文字の制限を超えたとします。私の読み方では、インデントする方法は以下の通りです。

def fun():
    print '{0} Here is a really long \
sentence with {1}'.format(3, 5)

しかし、この方法では、継続行のインデントと fun() . これはちょっと不格好ですね。もし誰かが私のコードを見ていたら、次のような理由でインデントが不揃いなのは、見栄えが悪いでしょう。 print ステートメントを使用します。

コードの可読性を損なわずに、このような行のインデントを効果的に行うにはどうしたらよいでしょうか?

どのように解決するのですか?

def fun():
    print(('{0} Here is a really long '
           'sentence with {1}').format(3, 5))

隣接する文字列リテラルは、C言語と同様、コンパイル時に連結されます。 http://docs.python.org/reference/lexical_analysis.html#string-literal-concatenation が詳しいです。