したがって、Python では (多くの言語に適用できると思いますが)、次のようなことがよくあります。
the_input = raw_input("what to print?\n")
while the_input != "quit":
print the_input
the_input = raw_input("what to print?\n")
the_input = raw_input("what to print?\n")
うるさいのかもしれませんが、行が繰り返される方法が好きではありません。保守性と組織が低下します。しかし、問題をさらに悪化させずに重複コードを回避するための回避策は見当たりません。一部の言語では、次のように記述できます。
while ((the_input=raw_input("what to print?\n")) != "quit") {
print the_input
}
これは間違いなくPythonicではなく、Pythonはループ条件内での割り当てさえ許可していません。
この有効なコードは冗長性を修正します。
while 1:
the_input = raw_input("what to print?\n")
if the_input == "quit":
break
print the_input
しかし、どちらかというと気分が良くありません。はwhile 1
、このループが永久に実行されることを意味します。私はループを使用していますが、それに偽の状態を与え、その中に本物を入れています。
私はうるさいですか?これを行うより良い方法はありますか?おそらく、私が知らないこのために設計された言語構造がありますか?