栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python中的幂运算-我应该更喜欢**运算符,而不是math.pow和math.sqrt吗?[重复]

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python中的幂运算-我应该更喜欢**运算符,而不是math.pow和math.sqrt吗?[重复]

math.sqrt
是平方根的C实现,因此与使用
**
实现Python内置
pow
函数的运算符不同。因此,使用
math.sqrt
实际给出的答案与使用
**
运算符给出的答案不同,并且确实有一个计算上的原因比内置函数更偏向于
numpy
或采用
math
模块实现。特别是,sqrt函数可能以最有效的方式实现,而
**
在大量的基数和指数上运行,并且对于平方根的特定情况可能未进行优化。另一方面,内置
pow
函数可以处理一些额外的情况,例如“复数,无穷整数幂和模幂”。

有关

**
和之间的区别的更多信息,请参见此堆栈溢出问题
math.sqrt

关于哪个更“
Pythonic”,我认为我们需要讨论该词的确切定义。从官方Python词汇表中可以看出,如果某段代码或构想“紧紧遵循Python语言最常见的习惯用法,而不是使用其他语言的通用概念来实现代码”,则该代码或构想就是Pythonic。在我能想到的每种其他语言中,都有一些具有基本平方根函数的数学模块。但是,有些语言缺少像

**
C
++这样的幂运算符。所以,
**
可能是更Python,但它是否是客观的更好取决于所使用的情况。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/668251.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号