質問: "example" if "exam" in example: print "yes!" または:for a in somelist: list.append(splitcolon.split(a))
回答: ほとんどの場合、1行でブロック句を実行するのは悪い考えです。これも一般性として、コードの形式の品質を低下させます。高品質のコードフォームは、pythonの主要な言語機能です。場合によってはpythonは1行でより確実にpython的なことを行う方法を提供します。リストdでニックdが言及したことなど:_newlist = [splitcolon.split(a) for a in somelist] _ただし、特に再利用可能なリストが必要な場合を除き、代わりにジェネレーターの使用を検討できます。_listgen = (splitcolon.split(a) for a in somelist) _この2つの最大の違いは、ジェネレーターについて繰り返し説明することはできませんが、使用する方が効率的であることです。pythonの最新バージョンには組み込みの三項演算子もあり、次のようなことができます_string_to_print = "yes!" if "exam" in "example" else "" print string_to_print _または_iterator = max_value if iterator > max_value else iterator _一部の人々は、これらの類似のif (condition):ブロックよりも読みやすく使いやすいと感じるかもしれません。結局のところ、コードスタイルと、作業中のチームの標準についてです。それが最も重要ですが、一般に、pythonのコードの形式は非常に重要なので、1行のブロックに対してアドバイスします。