我写了下面的代码,但我得到了一个酸洗错误。我不知道是什么错了。
x = Symbol('x')
y = Symbol('y')
f = Function('f')(x)
h = Function('h')(x)
g = Function('g')(y)
t = Function('t')(y)
X1 = f + g
X2 = h * t
E = 1 + (f.diff(x)) ** 2 + (f.diff(x) * g) ** 2
F = f.diff(x) * g.diff(y) + f.diff(x) * g.diff(y) * f * g
G = 1 + (g.diff(y)) ** 2 + (f * g.diff(y)) ** 2
MainD = 2 * (E * G - F ** 2)
with open('M.pickle', 'wb') as outf:
outf.write(pickle.dumps(MainD))我收到以下错误消息:
Can not pickle f: it is not the same object as _main_ .f发布于 2017-07-10 23:25:09
没有一个pickle甚至是dill能够与Sympy完全兼容。但是,您可以将输出转换为字符串,然后从txt文件中写入/读取。以下是基于您的代码的示例。
Str_MainD = str(MainD)
with open('M.py', 'w') as file:
file.write(Str_MainD)现在,由
with open('M.py', 'r') as file:
Read_From_File = file.read()您可以在另一个脚本中读取它(如果第二个脚本由一些Simpy代码操纵,请改用eval(file.read()))。
https://stackoverflow.com/questions/44994050
复制相似问题