當用戶輸入一個名稱(例如「Jim」)作爲我的「Test」類的實例的參數時,def find
函數被調用,並且for循環遍歷匹配「Jim」的字典中的所有名稱。如果def find
在字典中找到關鍵字「Jim」,那麼它應該打印出相應的值。但是當我運行代碼時,它只是說「無」。我需要更改什麼,以便在打印語句「工作」中調用def find
?如何通過字典中的鍵循環找到相應的值?
class Test(object):
def __init__(self, x=0): # error in (def find)?
self.x = x
c = None # error while looping in the for loop?
users = {
'John': 1,
'Jim': 2,
'Bob': 3
}
def find(self, x): # The user is supposed to type in the name "x"
for self.c in self.users: # it goes through the dictionary
if x == self.users[self.c]: # If x is equal to key it prints worked
print('worked')
else:
pass
beta = Test()
print(beta.find('Jim'))
'for'循環需要縮進。 – techydesigner
另外'else'需要縮進。 – techydesigner
這只是複製和粘貼 – PrQ