-4
我想寫一個函數,當用戶輸入其值之一時打印字典的密鑰。如何通過用戶輸入值查找密鑰
我的字典是:
student = {c0952: [18, 'John', 'Smith'],
c0968: [24, 'Sarah', 'Kelly']
}
對於例如,如果用戶輸入「約翰」,那麼學生人數c0952打印。
謝謝!
我想寫一個函數,當用戶輸入其值之一時打印字典的密鑰。如何通過用戶輸入值查找密鑰
我的字典是:
student = {c0952: [18, 'John', 'Smith'],
c0968: [24, 'Sarah', 'Kelly']
}
對於例如,如果用戶輸入「約翰」,那麼學生人數c0952打印。
謝謝!
也許是這樣的:
student = { 'c0952': [18, 'John', 'Smith'],
'c0968': [24, 'Sarah', 'Kelly']
}
name_value = raw_input("value? ")
for stu_num, names in student.iteritems():
for name in names:
if name == name_value:
print stu_num
或者,如akg mentioned,使用list comprehension一個班輪:
print [x for x in student.keys() if name_value in student[x]][0]
演示:
價值?約翰
c0952
使用最多的答案從Get key by value in dictionary。
如果價值相等,您想做什麼?我懷疑只會有一個'約翰'。 – akg
字典的要點是從一個關鍵字查找值,如果你想從人的名字中查找東西,那麼把這個名稱作爲關鍵字。 (可能作爲一個單獨的字典) –
可能重複的[在字典中獲取鍵值](http://stackoverflow.com/questions/8023306/get-key-by-value-in-dictionary) –