私はpython 3.6を使用しています。ユーザーが入力した値にキーを印刷する必要があります。ユーザーが6文字の郵便番号を入力すると、その郵便番号が存在する地域が印刷されるように、郵便番号に関連付けられた州および最初の文字の長いリストが表示されます。 *私はif文を使用することは許されないのです、ループまたはリスト* これは私がこれまで持っているものです。ユーザーがPythonで入力した値にキーを印刷するには
それは私に印刷(データ[キー])とのエラーメッセージを表示しますしかしdata = {}
# Initialize dictionary so that it maps from Province to correlated first letter
data = {"Alberta": "T",
"British Columbia":"V",
"Manitoba":"R",
"New Brunswick": "E",
"Newfoundland":"A",
"Nova Scotia": "B",
"Nunavut": "X",
"Northwest Territories": "X",
"Ontario": ["K,L,M,N,P"],
"Prince Edward Island": "C",
"Quebec":"[G,H,J]",
"Saskatchewan":"S",
"Yukon":"Y"}
# Read a postal code from the user
key = input("Enter a 6 character postal code (A1A1A1): ")
#computer letters to uppercase
key = key.upper()
print("That postal code resides in", (data[key]))
ステートメント。私は、私の州が1つの値と関連づけられているので、6つの値を入力して省を印刷できるように方法を見つけ出すのにも苦労しています。私はちょうど辞書を学びました。私はこれを解決するのに苦労しています。どんな助けも素晴らしいだろう!本当にありがとう。
T彼はどのキーが見つからないのかを示すエラーメッセージが表示されます( "KeyError:"の直後)。探しているキーと辞書のキー(地方の名前 - ':'の左*のもの)を比較してください。何か気づく? – Ryan
あなたの辞書は、指定されたタスクの後方にあります。あなたはそれを変更することが許されていますか? –
辞書は ""と宣言されています: ""の順番で辞書を "T"に切り替える方が良いでしょう: "Alberta"そしてif文とループなしであなたの仕事をすることができます –
yvs