如何在 __init__() 之后保存 Python 中的所有 "self" 变量
How to save all "self" variables in Python after __init__()
我在 __init__()
函数中有一个 class 和一些自变量。一些自变量是派生的,它具有混合数据类型。如何保存所有这些自变量,以便在发生错误时进行调试?
请指教
您可以查看泡菜:official docs。它适用于所有数据类型,甚至是自定义数据类型(但您仍然必须在加载数据时定义自定义 类)
它将数据保存到一个文件中。如果您知道要保存哪些变量,可以使用:
import pickle
class Test:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
pickle.dump([a, b, c], open('dumpfile.pickle', 'wb'))
test = Test(1, 2, 3) # Creates file dumpfile.pickle that contains the pickled list [1, 2, 3]
# To load the data back, even if in another file:
loaded_data = pickle.load(open('dumpfile.pickle', 'rb')) # [1, 2, 3]
希望对您有所帮助!
我在 __init__()
函数中有一个 class 和一些自变量。一些自变量是派生的,它具有混合数据类型。如何保存所有这些自变量,以便在发生错误时进行调试?
请指教
您可以查看泡菜:official docs。它适用于所有数据类型,甚至是自定义数据类型(但您仍然必须在加载数据时定义自定义 类)
它将数据保存到一个文件中。如果您知道要保存哪些变量,可以使用:
import pickle
class Test:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
pickle.dump([a, b, c], open('dumpfile.pickle', 'wb'))
test = Test(1, 2, 3) # Creates file dumpfile.pickle that contains the pickled list [1, 2, 3]
# To load the data back, even if in another file:
loaded_data = pickle.load(open('dumpfile.pickle', 'rb')) # [1, 2, 3]
希望对您有所帮助!