私は以下のコードをいくつか持っていますが、choice
は整数入力だけをとりますが、入力が整数でない場合は特別なものを出力します。しかし、この問題を扱う以下のコードはちょっと長いようです。とにかくそれを修正するには?Python:このコードを簡単にする方法は?
from sys import exit
def gold_room():
print "This room is full of gold. How much do you take?"
choice = raw_input("> ")
if "0" in choice or "1" in choice or "2" in choice or "3" in choice or "4" in choice or "5" in choice or "6" in choice or "7" in choice or "8" in choice or "9" in choice:
how_much = int(choice)
else:
dead("Man, learn to type a number.")
if how_much < 50:
print "Nice, you're not greedy, you win!"
exit(1)
else:
dead("You're greedy!")
def dead(why):
print why, "Good job!"
exit(0)
gold_room()
この質問は、おそらく[コードレビュースタック交換](https://codereview.stackexchange.com/)に適しています。 –
かなり長いif文についてお話していると思いますか?組み込み関数 'any'を見てください。それにもかかわらず、必要に応じて(単に削除された回答のように)例外をキャッチして、 'int'への変換を行うことをお勧めします。 –
'choice == '1a''ならば? –