2016-10-31 16 views
0

"キーが名前でキーの値がその名前の人の好きな食べ物である辞書を作成する: - プログラムは名前と好きな食べ物を求めて入力を続けますユーザーが名前の空の文字列を入力するまで、名前やお気に入りの食べ物が表示されます。辞書ループへの入力を繰り返す

これまでのところ私が持っている:

mydict=dict() 
def favorite_food_name(): 
    name=input(str("name:")) 
    food=input(str("food:")) 
    mydict[name]=food  
    print(mydict) 
favorite_food_name() 

しかし、私はループのいずれかの種類に繰り返すコードを取得することはできません。どのようなループを使用しますか?

+1

私は間違いなく、whileループを使用します。 –

+0

関数定義でwhileループを使用し、nameが空の文字列の場合は戻ります(フード入力を開始する前に) –

+0

"どのようなループでもコードを繰り返すことはできません"それはあなたが投稿したコードの中にループを使用していないからです... – coder

答えて

0

While Trueループを使用し、入力後にnameのテスト値を使用します。ところで

、いくつかのヒントコーディング:

  • をあなたが使用していない、"name:"str
  • あるので、必要でない場合は、str("name:")を必要とする機能部でmydictを入れ、returnステートメントを使用しないでくださいモデルレベルとして
  • 入力を検証するためにもっと多くのことを行うことができます。ここでは入力の誤字を除去するためにstrip関数を呼び出します。ここで

サンプルコードです:

def favorite_food_name(): 
    mydict = dict() 
    while True: 
     name = input("name:") 
     name = name.strip() 
     if name == '': 
      break 
     food = input("food:") 
     food = food.strip() 
     mydict[name] = food 
    # print(mydict) 
    return mydict 


if __name__ == '__main__': 
    mydict = favorite_food_name() 
    print(mydict) 
+0

ありがとう!これは私が必要とするものに近いです。それを持つことは良いことです。 – Ludiusvox

関連する問題