它是在具有此类变量的类函数中设置的。
Season_1 = AHS('yada', 'yada', 'yada')
Season_2 = AHS('yada', 'yada', 'yada')
Etc... Through 9 seasons.
我不知道如何设置打印方法以全部打印出来,而不是
Print(season_1.yada)
Print(season_2.yada)
如何使它变得更简单? enter link description here此处是用于获得更好上下文的链接。我是python,为此感到很抱歉:/
答案 0 :(得分:0)
您需要定义一个包含季节列表的函数:
def print_yada(seasons):
for s in seasons:
print(s.yada)
print_yada([season_1, season_2])
如评论中所述,从列表开始,而不是一堆编号的变量名。
seasons = [
AHS('yada', 'yada', 'yada'),
AHS('yada', 'yada', 'yada'),
AHS('yada', 'yada', 'yada')
]
print_yada(seasons)
不会有单个AHS
方法可以做到这一点,因为您不是在处理AHS
的单个 instance ,而是一个他们。
答案 1 :(得分:0)
我建议将您的季节而不是单个变量放在列表中
seasons = [AHS('foo'), AHS('bar'), ...]
然后您就可以遍历它们
for season in seasons:
print(season.yada)
答案 2 :(得分:0)
就像其他人所说的,如果它在成员上提供了内置Python集合已提供的功能之外的任何功能,则可能需要一个实际的列表,大概在您的类中。如果没有,则不需要上课。
另一方面,如果“ yada”,“ yada”,“ yada”实际上是定义类的固定成员,并且您基本上正在寻找一种打印此类对象的方法,可以定义类的__str__
成员方法来创建对象的可读输出格式,大概是指它们的成员。
__str__()
应该返回一个字符串,该字符串在类的对象转换为一个对象时(例如在打印时)使用。
除了必需的实例参数外,它没有其他参数。
例如:
class MyClass:
def __init__(self, a, b):
self.a, self.b = (a, b)
def __str__(self):
return f"My members are: {self.a}, {self.b}"
print(MyClass(3, "abc"))
我的成员是:3,abc