我是 python 新手(来自 Java 世界)。我有一个有两个属性的类。我需要另一个属性,它应该是一个对象。
我怎样才能以Pythonic的方式做到这一点?
这是我尝试过的
class DummyData():
def __init__(self,lat,long):
self.lat = lat
self.long = long
self.data = []
loc_1 = DummyData(12,22)
my_data = {
"mess_11" : 0.002,
"mess_22" : 2.222,
"mess_33" : 3.23
}
loc_1.data = my_data
最佳答案
你想要keyword args ?
class DummyData:
def __init__(self,lat,long,**kwargs):
self.lat = lat
self.long = long
self.data = kwargs
loc_1 = DummyData(12,22,mess_11=0.002,mess_22=2.222,mess_33=3.23)
print(loc_1.data['mess_11']) # 0.002
或者只是一个字典参数?
class DummyData:
def __init__(self,lat,long,dct):
self.lat = lat
self.long = long
self.data = dct
loc_1 = DummyData(12,22,{
"mess_11" : 0.002,
"mess_22" : 2.222,
"mess_33" : 3.23
})
print(loc_1.data['mess_11']) # 0.002
或者还有什么?
class DummyData:
def __init__(self,lat,long,dct):
self.lat = lat
self.long = long
self.data = type('myobj', (), dct)
loc_1 = DummyData(12,22,{
"mess_11" : 0.002,
"mess_22" : 2.222,
"mess_33" : 3.23
})
print(loc_1.data.mess_11) # 0.002
关于python - 在Python中使用类作为属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50062029/