gpt4 book ai didi

python - 类型错误 : unhashable type: 'dict' in python

转载 作者:行者123 更新时间:2023-12-01 05:43:33 25 4
gpt4 key购买 nike

尽管我从未在代码中的任何地方使用过字典,但我收到了有关字典的错误消息

这是我的代码:

mm=[]
soln=[]
for i in range(len(momvec)):
string = str(momvec[i])
num = string[2:]
mm.append(Symbol('x'+num))
print num
print mm
soln.append(solve(mom[i]-momvec[i],mm))
print type(MFK[0])
for m in range(0,len(MFK)):
for i in range(0,len(mm)):
print MFK[m]
MFK[m]= Subs(MFK[m],mm[i], soln[i]).doit()

我想要做的是将列表MFK中的一些项目替换为mm所指示的内容以及soln的内容迭代.

回溯:

Traceback (most recent call last):
File "MEA.py", line 313, in <module>
MFK_final(numMoments)
File "MEA.py", line 242, in MFK_final
MFK[m]= Subs(MFK[m],mm[i], soln[i]).doit()
File "/cluster/soft/linux64/epd/lib/python2.7/site-packages/sympy/core/function.py", line 1270, in __new__
pts = sorted(set(point), key=default_sort_key)
TypeError: unhashable type: 'dict'

mom、momvec 和 MFK 的值分别为:

[x2 - y_0**2]

[ym2]

[-2*c_0*y_0*(y_0 - 1) - 2*c_0*(-y_0**2 + yx1*(y_0**2/yx1 + 1)) + 2*c_1*(0.5*c_2 - 0.5*y_0), 4.0*c_0*y_0**2 - 4.0*c_0*y_0 + 2.0*c_1*c_2 - 2.0*c_1*y_0 - (-y_0**2 + yx1*(y_0**2/yx1 + 1))*(8.0*c_0*y_0 - 8.0*c_0 + 2.0*c_1)]

将输出打印到屏幕,似乎第一个循环运行正常,然后在标题中抛出错误。有谁知道我该如何解决这个问题?

非常感谢

最佳答案

您的 soln[i] 是一本字典,但它需要是 SymPy 表达式(您计划将 替换为 MFK[m] 的表达式) mm[i])。

关于python - 类型错误 : unhashable type: 'dict' in python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16859642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com