class UniversityAthletics():
def __init__(self, university_name, sport):
self.name = university_name
self.sport = sport
self.tickets_sold = 10
def tickets_sold(self):
"""This just tells you how many tickets have been sold"""
print(str(self.tickets_sold) + " tickets have been sold")
def describe_athletics(self):
print(self.name.title() + " " + self.sport.title())
def in_season(self):
print(self.sport.title() + " is in season.")
def set_tickets_sold(self, numticket):
"""This sets the number of tickets that have been sold"""
self.tickets_sold = numticket
def increment_tickets_sold(self, moretickets):
"""This increments the number of tickets sold"""
self.tickets_sold += moretickets
athletics = UniversityAthletics('salisbury university', 'soccer')
athletics.set_tickets_sold(20)
athletics.tickets_sold()
athletics.increment_tickets_sold(500)
athletics.tickets_sold()
我试图让那台改变门票“increment_tickets_sold”,但数量已售出“set_tickets_sold”门票的数量,那么属性的属性,当我尝试设置数量的票,然后调用方法'tickets_sold()'我不断收到错误。修改属性的值通过方法
Traceback (most recent call last): File "E:/WorWic/IntroToProgramming/chapter9/University Athletics part 2.py", line 29, in athletics.tickets_sold() TypeError: 'int' object is not callable
我做错了什么?
您正在用'tickets_sold'变量覆盖'ticks_sold()'方法。改变他们的名字。例如,将变量更改为'_tickets_sold' – GWW
您在同一个对象上使用了'tickets_sold'名称作为两个不同的事物。不要这样做。 – user2357112