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

作者: GriffeyKen (KenGriffeyJr)   2015-04-25 02:47:56
各位版上的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
作者: xup65k6jo3 (高級貨)   2015-04-25 04:55:00
這看起來只是邏輯沒寫好而已
作者: mars90226 (火星人)   2015-04-25 09:52:00
我覺得是需求沒想好,你的Tom一直都在database當然會印出Already in database如果你真的要同一個輸入不同結果,那你要記錄輸入的次數,第一次回傳值,第二次就回already in database

Links booklink

Contact Us: admin [ a t ] ucptt.com