[問題] 重複輸入得到不同輸出

看板Python作者 (KenGriffeyJr)時間9年前 (2015/04/25 02:47), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串1/2 (看更多)
各位版上的python高手 我是初學者想問個問題 我想做一個簡單的姓名成績列表 問題如下 一開始輸入Tom Enter name:Tom 然後得到 Grade:50 再來第二次輸入Tom我希望得到 Already in database的回答 輸入OK則會終止loop 以下是我寫的code 想請問 為啥我輸入Tom都一直得到 Enter name:Tom Grade:50 already in database 的答案呢? 請問該如何修改呢? 麻煩各位版友請指教 d={ "Tom":50, "Jerry":70, "Sally":90, } while 1: name=raw_input("Enter name:") if name== 'Tom': print 'Grade:'+str (d.get("Tom")) if name== 'Jerry': print 'Grade:'+str (d.get("Jerry")) if name== 'Sally': print 'Grade:'+str (d.get("Sally")) if name not in d: print 'not found' else: print 'already in database' if name== 'OK': break -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 202.169.173.138 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1429901278.A.C33.html

04/25 04:55, , 1F
這看起來只是邏輯沒寫好而已
04/25 04:55, 1F

04/25 09:52, , 2F
我覺得是需求沒想好,你的Tom一直都在database
04/25 09:52, 2F

04/25 09:52, , 3F
當然會印出Already in database
04/25 09:52, 3F

04/25 09:53, , 4F
如果你真的要同一個輸入不同結果,那你要記錄輸入的次
04/25 09:53, 4F

04/25 09:54, , 5F
數,第一次回傳值,第二次就回already in database
04/25 09:54, 5F
文章代碼(AID): #1LEe_Ump (Python)
文章代碼(AID): #1LEe_Ump (Python)