我已经创建了一个类,我们称它为Person:
class Person(object):
def __init__(self, name: str, lastname: str):
self.name, self.lastname = name, lastname
def Copy(self):
return Person(self.name, self.lastname)
创建该类的实例后,我决定将其保存到pickle文件中。 现在,保存后,我想用pickle文件中的数据创建该类的新实例,如下所示:
with open("data.pkl", "rb") as data_file:
David = pickle.load(data_file).Copy()
由于复制方法是显式创建的以创建新实例,而不是仅使新对象指向相同的内存位置,因此我希望这样做能够起作用。
但是,我收到一条错误消息:
'NoneType' object has no attribute 'Copy'
我考虑过要铸造它,只是像这样铸造:
David = Person(pickle.load(data_file)).Copy()
也不起作用,因为它想获取init函数的参数而不是强制转换...
如果有人可以提供帮助,那将是很好的,因为我已经搜索并且没有找到类似的问题,或者我无法用一句话很好地解释它来找到它……其中一个笑声>