3 回答
TA贡献1821条经验 获得超4个赞
这是何时使用类方法的示例。__init__但是,不应附加到全局变量。要么 1)将类方法附加到类属性,要么 2)让它返回对象并让调用者维护一个全局列表。
emne = []
class Emne:
emne = []
def __init__(self, fag_kode):
self.fag_kode = fag_kode
self.karakter = ""
@classmethod
def legg_til_emne_1(cls):
nytt_emne = input("test:")
cls.emne.append(cls(nytt_emne))
@classmethod
def legg_til_emne_2(cls):
nyttEmne = input("test:")
return cls(nyttEmne)
Emne.legg_til_emne_1() # Add to Emne.emne
e = Emne.legg_til_emne_2()
emne.append(e)
TA贡献1812条经验 获得超5个赞
我不确定你到底在问什么,因为你还没有回复评论。所以,
emne=[]
class Emne:
def __init__(self,fagKode):
self.fagKode = fagKode
self.karakter = ""
emne.append(self)
def leggTilEmne(self, value): # <--- is this what you want
self.nyttEmne= Emne(value)
TA贡献2036条经验 获得超8个赞
如果通过选择名称来表示您的fagKode属性,那么您需要的是:
fagKode = input('Enter code: ')
Emne(fagKode)
您将 Enme 的实例添加到构造函数的列表中,因此您无需将它们保存到变量中。
或者,您可以在函数中处理:
emne=[]
class Emne:
def __init__(self,fagKode):
self.fagKode = fagKode
self.karakter = ""
def leggTilEmne():
nyttEmne = input("test:")
enme.append(Emne(nyttEmne))
添加回答
举报