Skip to main content
 首页 » 编程设计

python之如何将连接列表作为参数传递

2025年05月04日20zengkefu

我试图将一个参数列表传递给一个必须从列表和字典中组合起来的函数,但是像往常一样,Python 毫无帮助地提示某些东西“不可迭代”或“不可订阅”,却没有说明到底是什么错误的。请考虑以下事项:

argl=[p,T,C] 
argl.append(list(ph.items))       
Ci['ol']=fsolve(Cr_impl,0.1*C,argl) 

其中 fsolve 是 numpy 的根查找器,ph 是一个字典,其条目的形式为 'ol': 0.55 等,p、T 和C 是包含一些实数的简单标量。 Python 提示 'builtin_function_or_method' 对象不可迭代。我也试过了

argl=[p,T,C]+list(ph.items) 

同样的结果,还有

argl=[p,T,C]+ph.items 

结果

can only concatenate list (not "builtin_function_or_method") to list 

那么,它想要什么?必须有办法将 dict 拆分成一个更长的列表(然后可以在调用的函数中重新排列)。

请您参考如下方法:

dict.items 是一个方法。您需要为其添加括号才能实际调用它。例如

argl.append(list(ph.items()))