1. ホーム
  2. python

[解決済み] Python でのリスト内包やジェネレータ式のための行継続

2022-11-06 08:22:04

質問

非常に長いリストを理解するために、どのように分割することになりますか?

[something_that_is_pretty_long for something_that_is_pretty_long in somethings_that_are_pretty_long]

また、改行するときに「♪」を使うのを嫌がる人がいるのをどこかで見たことがあります。 というのを見たことがありますが、なぜなのでしょうか?その理由は何なのでしょうか?

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

[x
 for
 x
 in
 (1,2,3)
]

は問題なく動作するので、ほとんど好きなようにできます。個人的には

 [something_that_is_pretty_long
  for something_that_is_pretty_long
  in somethings_that_are_pretty_long]

その理由は \ があまり評価されないのは、それが 末尾 に表示され、目立たないか、余分なパディングが必要で、行の長さが変わったときに修正しなければならないことです。

x = very_long_term                     \
  + even_longer_term_than_the_previous \
  + a_third_term

このような場合は、parensを使用します。

x = (very_long_term
     + even_longer_term_than_the_previous
     + a_third_term)