解决python中的幂函数、指数函数问题

yipeiwu_com5年前Python基础

最近在调代码,碰到幂函数、指数函数,总是提示

ValueError: math domain error

ValueError: negative number cannot be raised to a fractional power

这些异常、错误,

发现里边有很多细节问题:

python中,想要表示a的b次方时,有两种方法:

1,math.pow()这个内置函数

2,**运算符

这两种方法效果是一样的,但是当

b为分数,a为负数:当幂运算符的底数为负数、幂为分数时,Python会抛出ValueError: negative number cannot be raised to a fractional power异常,

这时有两种方法可以解决此问题:

1,底数a正负均可不影响你的算法的话,加一个绝对值就行了即abs(a);

2,如果底数a必须是正、或必须是负的话,需要采用复数进行运算。因此凡是遇到幂为分数的项,都将底数用complex()转换为复数。

以上这篇解决python中的幂函数、指数函数问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pyramid添加Middleware的方法实例

假设我们要添加一个我们自己的Middleware,用来记录每次请求的日志下面就是一个符合规范的Middleware, 构造函数中接受一个WSGI APP, __call__返回一个WSG...

使用python PIL库实现简单验证码的去噪方法步骤

使用python PIL库实现简单验证码的去噪方法步骤

字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的。 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对验证码识别分类之...

Python 仅获取响应头, 不获取实体的实例

Python 仅获取响应头, 不获取实体的实例

Python Just get Response Headers, not get content. 1. Use HEAD method >>> import r...

用Python画小女孩放风筝的示例

用Python画小女孩放风筝的示例

我就废话不多说了,直接上代码吧! # coding:utf-8 2import turtle as t 3import random 4# 画心 5def xin(): 6...

Python+MongoDB自增键值的简单实现

背景 最近在写一个测试工具箱,里面有一个bug记录系统,因为后台我是用Django和MongoDB来实现的,就遇到了一个问题,要如何实现一个自增的字段。 传统的关系型数据库要实现起来是非...