私は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」が定義されていません」というエラーが発生しました。これが機能しなかった理由を誰かが説明できるでしょうか。
前もって感謝します。