PyCharm:module';数学';没有属性';产品';
我使用的是Python 3.7,我的编辑器是PyCharm。当我从数学模块调用prod方法时,它给出了错误: AttributeError:模块“math”没有属性“prod” 我怎样才能修好它?(它适用于其他方法,如PyCharm:module';数学';没有属性';产品';,pycharm,attributeerror,Pycharm,Attributeerror,我使用的是Python 3.7,我的编辑器是PyCharm。当我从数学模块调用prod方法时,它给出了错误: AttributeError:模块“math”没有属性“prod” 我怎样才能修好它?(它适用于其他方法,如floor、sqrt等。唯一的问题是prod) 以下是我的代码: import math numbers = [1, 2, 3, 4] print(math.prod(numbers)) 一般来说,我的问题是为什么会出现这种问题,以及如何处理类似情况 谢谢。尝试将math.p
floor
、sqrt
等。唯一的问题是prod
)
以下是我的代码:
import math
numbers = [1, 2, 3, 4]
print(math.prod(numbers))
一般来说,我的问题是为什么会出现这种问题,以及如何处理类似情况
谢谢。尝试将math.prod(数字)分配给变量,然后打印该变量。如果这不起作用,请尝试下载最新版本的python,并确保python和pycharm运行的版本相同。来自python
math.prod
文档
3.8版中的新版本
要修复它,请将Python安装升级到>=v3.8。
math.prod
是一个新函数(来自Python 3.8)
如果您想获得更兼容的代码,应使用旧方法:
from functools import reduce
import operator
reduce(operator.mul, [1,2,3,4], 1)
此外,模块itertools
通常也很有用(如果您查看文档,您有许多关于如何实现数学运算的示例)
回答您的一般问题:如何处理此类案件:
Python文档非常好。您应该更多地参考它,例如,如果您有错误,还要检查您需要哪些参数以及返回值。人类的记忆是有限的,所以我们大量地依赖于文档,特别是检查特殊情况(如果列表为空怎么办?)。所以我(和许多人)把这个URL保存在书签上。注意:不要完全相信文档,也要做一些测试(特别是如果功能描述很长,并且有许多特殊情况:您的特殊情况可以由不同的“特殊情况”开关处理。非常感谢您提供详细完整的答案。