int too large to convert to float
溢出错误
Python编程时遇到int too large to convert to float
错误,例如计算pow(a, b)
时,a十分大,b是小数,也就是开1/b次方,就可能遇到这种问题。
解决方法
使用decimal模块
from decimal import *def my_pow(x, y, prec, modulo=None):a = Decimal(x)b = Decimal(y)getcontext().prec = precif not modulo:c = Decimal(modulo)return pow(a, b, c)
上面的函数返回一个Decimal实例,计算的时候记得设置第三个参数,也就是浮点数的精度,不然浮点数的精度可能会影响计算结果
Decimal实例是可以用于Python的算术运算的,但是不能进行位运算。如
from decimal import *
a = Decimal(2)
b = Decimal(3)
a + b == Decimal('5')
a - b == Decimal('-1')
a * b == Decimal('6')
a / b == Decimal('0.6666666666666666666666')
pow(a, b) == Decimal('8')
int too large to convert to float相关推荐
- 关于“Python int too large to convert to C long”的解决。
这个问题在我使用python计算平方的时候出现,其实问题的症结并不是数据太大(你可以使用print(很大的数的平方)来验证,会发现是可以输出的),而是数据结构的问题.具体是指,直接使用np.array ...
- java的int、char、long、float、double对byte的转换,在通信的时候会用到
/** * java的int.char.long.float.double对byte的转换,在通信的时候会用到 * <ul> * <li>文件名称: com.born.util ...
- JAVA实体类不要使用基本类型,基本类型包含byte、int、short、long、float、double、char、boolean...
由于JAVA的基本类型会有默认值,例如当某个类中存在private int age;字段时,创建这个类时,age会有默认值0.当使用age属性时,它总会有值.因此在某些情况下,便无法实现age为nu ...
- c语言int转换成float,int怎么转化为float 将 int型变量n转换成float型变量的方法是...
请问C语言中如何将int转换为float 将 int型变量n转换成float型变量的方法是 A float n B (float )n C float( n) D( float) ( n)不懂小编的人 ...
- C# int uint long ulong byte sbyte float double decimal 范围,及类型!
C# int uint long ulong byte sbyte float double decimal 范围,及类型! static void Main(string[] args){Conso ...
- ncut matlab,matlab call Ncut: Matrix is too large to convert to linear index.
在调用Ncut的matlab代码的时候发现出现如下问题: Matrix is too large to convert to linear index. 原始的错误信息如下: ??? Matrix i ...
- 记录:tensoflow改错TypeError: Cannot interpret feed_dict key as Tensor: Can not convert a float into a Te
错误描述: TypeError: Cannot interpret feed_dict key as Tensor: Can not convert a float into a Tensor. 改错 ...
- c语言基本数据类型(short、int、long、char、float、double)
一 C 语言包含的数据类型 short.int.long.char.float.double 这六个关键字代表C 语言里的六种基本数据类型. 在不同的系统上,这些类型占据的字节长度是不同的: 在32 ...
- Java实现float转换成int代码_Java中如何将float转换为long或int?(附代码)
本篇文章给大家带来的内容是关于Java中如何将float转换为long或int?(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在Java中,有三种方法可以将float转换 ...
- java中将int转换float_在java中将float和double转换为int时有什么区别?
我用这些语句来测试 float f=4.35f; int i=(int)(f*100); System.out.println(i); double d=4.35; i=(int)(d*100); S ...
最新文章
- C语言实现一种简单的应用服务器内部数据结构的思路(三)
- 彻底搞清楚浏览器渲染过程
- Error:The supplied javaHome seems to be invalid. I cannot find the java executable
- ubuntu 14.04 环境下打开xls、pdf与png文件
- Linux下设置普通用户使用sudo命令
- 红橙Darren视频笔记 IOC注解框架 自己写个注解框架
- 语音识别已逐渐普及 搜狗讯飞各具特色
- Java并发编程实战_盖兹
- android10 谷歌服务框架,google服务框架下载官方版
- 模式识别与机器学习第四章特征选择和提取
- what to benefit from the C++14 Standard
- Email 邮件方式激活注册账号
- 傅里叶变换之掐死教程
- Thingworx自定义扩展开发(三)- echarts集成
- win10可以上网但显示无法连接到Internet
- 如何开启红米手机4X的ROOT超级权限
- matplotlib函数库使用imshow绘制像素图片
- 点击化学(Click chemistry) 叠氮-PEG4-NHS/Biotin-PEG-N3/Azid/DBCO-EPG-NHS/DBCO-NH2
- linux 拍照软件有哪些,六款基于Linux的开源照片管理软件推荐
- python ascii错误处理
热门文章
- 省级c语言笔试题,C语言笔试题库.doc
- java如何获取wsdl文件,如何使用Java获取WSDL文件中的复杂类型?
- Cgroup资源配置方法详细解析
- 制作一个简单HTML个人网页网页(HTML+CSS)
- android歌词控件
- isv支付宝小程序三方模板开发快速指南
- 主成分分析 SPSS、python实例分析
- yandex alice语音开发
- 服务器启动显示fr 01,X3850X5服务器无法开机故障处理 微码升级.docx
- linux多人共享桌面,gnome 开远程桌面共享功能(linux启动多个桌面)