我是Python的新手,我寫了一個用於管理簡單電話簿的類。 (我刪除了與這篇文章不相關的方法)。Python:調用方法的問題
class Phonebook:
def __init__(self):
self.book = {}
def newEntry(self, name, number):
self.book[name] = number
def findNumber(self, name):
return self.book[name]
def nameList(self):
list = self.book.keys()
list.sort()
for k in list:
print k, self.book[k]
我的問題是關於過去的方法,nameList
,其以字母順序打印電話簿條目(姓名和電話號碼)。本來,我試過如下:
def nameList(self):
list = self.book.keys()
list.sort()
for k in list:
print k, findNumber(k)
然而,這投擲了一個「NameError」全局名稱「findNumber」沒有定義」的錯誤會有人能夠解釋爲什麼沒有工作
?在此先感謝。
使用self.findNumber(k)。 –
請不要將您的變量命名爲list,它已經是內置列表類型的名稱。 –