class Employee:
def __init__(self, first, last):
self.first = first
self.last = last
def fullname():
return '{} {}'.format(self.first, self.last)
emp = Employee('Rob', 'M')
print (emp.fullname())
self
fullname メソッドでキーワードを省略したことに気付くと思いますが、次のようになります。
TypeError: fullname() takes 0 positional arguments but 1 was given
これは実際には引数エラーですか? 私の推測ではノーだったので、試してみました:
class Employee:
def __init__(foo, first, last):
foo.first = first
foo.last = last
def fullname():
return '{} {}'.format(self.first, self.last)
emp = Employee('rob', 'm')
print(emp.fullname())
の return ステートメントから self を除外するなど、その他のいくつかのことfullname()
。ただし、変更の各方法は、エラーがTypeError
. だから私は困惑しています、なぜfullname()
議論が渡されているのですか?