我刚刚在Python 2.7 64b中更新了lmfit包到0.9.15版本,在创建一个新的Parameters对象(即p = lmfit.Parameters())时出现以下错误:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "C:\Python27_64b\lib\site-packages\lmfit\parameter.py", line 65, in __init__
super(Parameters, self).__init__(self)
File "C:\Python27_64b\lib\collections.py", line 48, in __init__
self.update(*args, **kwds)
File "C:\Python27_64b\lib\site-packages\lmfit\parameter.py", line 87, in update
for sym in other._asteval.user_defined_symbols():
AttributeError: 'Parameters' object has no attribute '_asteval'
我使用以下版本: 如果你能帮助我,我将不胜感激。 谢谢你! 保罗。 问题来源StackOverflow 地址:/questions/59466719/lmfit-parameters-object-has-no-attribute-asteval
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这个错误信息表明在更新lmfit库到0.9.15版本后,尝试创建Parameters
对象时遇到了问题。错误提示AttributeError: 'Parameters' object has no attribute '_asteval'
说明Parameters
类的实例没有预期的_asteval
属性。
这可能是由于lmfit库的内部实现变更导致的不兼容性问题。考虑到你使用的是Python 2.7,还请注意lmfit库可能已经不再支持这么老的Python版本,因为许多库已逐步停止对Python 2的支持,转而全力支持Python 3。
解决这个问题有几种可能的途径:
回退lmfit版本:如果你确定之前的lmfit版本工作正常,可以考虑将lmfit回退到一个与你的Python 2.7环境兼容的版本。你可以使用pip来完成这个操作,命令如下:
pip install lmfit==<之前的版本号>
请替换<之前的版本号>
为你之前使用的、工作正常的lmfit版本号。
升级Python:长远来看,最推荐的解决方案是升级你的Python环境到Python 3.x。Python 2已经在2020年停止官方支持,很多现代库和框架都要求至少Python 3.6或更高版本。升级Python后,再安装最新版的lmfit,可能会直接解决这个问题。
查看lmfit的官方文档或GitHub页面:有时候,这样的问题可能是已知的bug或者有其他用户也遇到过并提供了临时解决方案。访问lmfit的GitHub仓库(https://github.com/lmfit/lmfit-py)的Issue部分,搜索相关问题,看是否有开发者提供的修复建议或计划。
提交issue:如果上述方法都不能解决问题,且你确认这是一个新版本引入的问题,可以在lmfit的GitHub仓库中提交一个新的issue,详细描述你的问题、环境配置以及已尝试的解决步骤,项目维护者或社区成员可能会提供帮助。
希望这些建议能帮到你!