私は国内プロジェクトのためにPEP-8準拠のコードを書こうとしています(python world)での最初のステップであることを認めなければなりません。 80文字以上
-self.textのドットの近くの細い実線は80文字のマークです。 (プレビューなしの悲しいリンクは申し訳ありませんが、投稿するには10人以上の担当者が必要です)
私はそれを最も多くの別の行に分割しようとしていますPythonic方法ですが、実際に動作する唯一のaswerは私のリンターのエラーです
作業コード:
def __str__(self):
return f'{self.date} - {self.time},\nTags:' + \
f' {self.tags},\nText: {self.text}'
出力:
2017-08-30 - 17:58:08.307055,
Tags: test tag,
Text: test text
リンターは、私がPEP-8のE122を尊重していないと考えていますが、文字列を正しくし、コードを準拠させる方法はありますか?
から Python Code)のスタイルガイド :
長い行を折り返す好ましい方法は、括弧、括弧、および中括弧内でPythonの暗黙の行継続を使用することです。
これを前提に、以下はPEP-8準拠の方法で問題を解決します。
_return (
f'{self.date} - {self.time}\n'
f'Tags: {self.tags}\n'
f'Text: {self.text}'
)
_
Python文字列は、コンマで区切られていない場合は自動的に連結されるため、join()
を明示的に呼び出す必要はありません。
そうなると思う
return f'''{self.date} - {self.time},
Tags: {self.tags},
Text: {self.text}'''
@noddyで述べたように、このアプローチは変数代入式にも機能します。
var1 = "foo"
var2 = "bar"
concat_var = (f"First var is: {var1}"
f" and in same line Second var is: {var2}")
print(concat_var)
あなたに与える必要があります:
First var is: foo and in same line Second var is: bar