0

との使用について質問がconditionalありますraw_input.

基本的に私はPythonで辞書を検索し、ユーザー入力を評価しようとしています。ユーザー入力が辞書にあるかどうかを確認しようとしています。

(辞書は含めません)

shortname=raw_input('Please enter a short name that corresponds to the dictionary: ')

if shortname in paperwork:
    print paperwork['shortname']

else:
    print 'Name Not Found'

問題は、ユーザー入力を評価するときに、実際にはtrueであるのにfalseとして宣言していることです。誰かが私が間違っていることを教えてくれますか?

書類の「shortname」False

(手動で有効かどうかを確認すると得られるもの)

私は少し周りを見回しましたが、この質問は非常に基本的なものであり、ここにはありません。ありがとう!

4

1 に答える 1

0

あなたの間違いは別として

if shortname in paperwork:
    print paperwork['shortname']

変数を使用する代わりにshortname、文字列リテラルを使用している場所'shortname'

私が立てたこの例では何の問題もありません:

lettersStored = ['a','b','c','d']
name=raw_input('Please enter a letter:\n')

if name in lettersStored:
    print "Found it at index %d " % (lettersStored.index(name))
else:
    print 'Not found'

入力でテストしました:

a  (Found it at index 0)
b  (Found it at index 1)
c  (Found it at index 2)
z  (Not Found) 
x  (Not Found)
于 2012-09-28T03:38:46.530 に答える