[英]Having trouble with a TypeError in Python 3
Hey all I am new to programming and I need help with a problem. 嘿,我是编程新手,我需要解决问题。 In this problem we are asked to create a super class "Person" and a sub class Instructor and Student
在此问题中,我们被要求创建一个超类“ Person”和一个子类“ Instructor and Student”
The main problem I am having is that I have a method name that needs to retrive the name of the Person and in the console x.name works but the required x.name() does not and gives me a TypeError: 'str' object is not callable 我遇到的主要问题是,我有一个方法名称需要检索Person的名称,并且在控制台中x.name可以工作,但所需的x.name()却没有,并且给了我TypeError:'str'对象不可通话
from datetime import date
class Person:
def __init__(self, name, year):
self.name = str(name)
self.year = year
def age(self):
return date.today().year- self.year
def name(self):
return (self.name)
class Instructor(Person):
def __init__(self, name, age, degree):
Person.__init__(self, name, age)
def degree(self):
return (self.degree)
class Student(Person):
def __init__(self, name, age, major = "major"):
Person.__init__(self, name, age)
def major(self):
return (self.major)
Thank you for your help 谢谢您的帮助
The name name
conflicts. 名称
name
冲突。 It's used for method and attribute. 用于方法和属性。
Use different names for them. 为它们使用不同的名称。
class Person:
def __init__(self, name, year):
self.name = str(name) # <----
self.year = year
def age(self):
return date.today().year- self.year
def name(self): # <---- same name is used.
return (self.name)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.