python中float到意义_float可以在Python中使用的值范围是多少?
6 个答案:
答案 0 :(得分:64)
>>> import sys
>>> sys.float_info
sys.floatinfo(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308,
min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53,
epsilon=2.2204460492503131e-16, radix=2, rounds=1)
最小的是sys.float_info.min(2.2250738585072014e-308),最大的是sys.float_info.max(1.7976931348623157e + 308)。有关其他属性,请参阅documentation。
sys.float_info.min是标准化的最小值。您通常可以将非规范化的最小值设为sys.float_info.min * sys.float_info.epsilon。请注意,这些数字表示精度不足。正如所料,非正规化min小于标准化min。
答案 1 :(得分:13)
请参阅此post。
帖子的相关部分:
In [2]: import kinds
In [3]: kinds.default_float_kind.M
kinds.default_float_kind.MAX kinds.default_float_kind.MIN
kinds.default_float_kind.MAX_10_EXP kinds.default_float_kind.MIN_10_EXP
kinds.default_float_kind.MAX_EXP kinds.default_float_kind.MIN_EXP
In [3]: kinds.default_float_kind.MIN
Out[3]: 2.2250738585072014e-308
答案 2 :(得分:8)
作为对前面答案的一种理论补充,我想提一下,“魔术”值±308直接来自浮点数的二进制表示。 Double precision floats具有±c * 2 ** q的形式,具有“小”小数值c(~1),并且q是用11个二进制数字写入的整数(其符号包括1位)。 2 **(2 ** 10-1)具有308(十进制)数字的事实解释了极值浮点值中10 **±308的出现。
用Python计算:
>>> print len(repr(2**(2**10-1)).rstrip('L'))
308
答案 3 :(得分:4)
Python使用双精度浮点数,它可以容纳从大约10到-308到10到308的值。
从Python提示中尝试此实验:
>>> 1e308
1e+308
>>> 1e309
inf
10到309电源是溢出,但是10到38不是。 QED。
实际上,您可以通过denormals获得小于1e-308的数字,但是这会对性能产生重大影响。我发现Python能够处理1e-324但在1e-325上下溢并返回0.0作为值。
答案 4 :(得分:3)
只是玩耍;这是一个算法方法,可以找到最小和最大正浮点数,希望在任何可以接受float("+inf")的python实现中:
def find_float_limits():
"""Return a tuple of min, max positive numbers
representable by the platform's float"""
# first, make sure a float's a float
if 1.0/10*10 == 10.0:
raise RuntimeError("Your platform's floats aren't")
minimum= maximum= 1.0
infinity= float("+inf")
# first find minimum
last_minimum= 2*minimum
while last_minimum > minimum > 0:
last_minimum= minimum
minimum*= 0.5
# now find maximum
operands= []
while maximum < infinity:
operands.append(maximum)
try:
maximum*= 2
except OverflowError:
break
last_maximum= maximum= 0
while operands and maximum < infinity:
last_maximum= maximum
maximum+= operands.pop()
return last_minimum, last_maximum
if __name__ == "__main__":
print (find_float_limits()) # python 2 and 3 friendly
就我而言,
$ python so1835787.py
(4.9406564584124654e-324, 1.7976931348623157e+308)
使用非正规。
答案 5 :(得分:1)
从技术上讲,最小浮点为-inf,最大浮点为inf:
>>> (float('-inf') # negative infinity
< -1.7976931348623157e+308 #* smallest float that is not negative infinity
< -4.9406564584124654e-324 #* biggest negative float that is not zero
< 0 # zero duh
< 4.9406564584124654e-324 #* smallest positive float that is not zero
< 1.7976931348623157e+308 #* biggest float that is not positive infinity
< float('inf')) # positive infinity
True
带有*的
数字与机器有关,与实现有关。
python中float到意义_float可以在Python中使用的值范围是多少?相关推荐
- dbscan算法中 参数的意义_无监督机器学习中,最常见的聚类算法有哪些?
在机器学习过程中,很多数据都具有特定值的目标变量,我们可以用它们来训练模型. 但是,大多数情况下,在处理实际问题时,数据不会带有预定义标签,因此我们需要开发能够对这些数据进行正确分类的机器学习模型,通 ...
- python中float可以和int计算吗_python 中int ,float,字符串的操作
int 的功能 int: 1:bit_length(二进制位数的方法)返回当前数字占用的最小位数 2:__abs__ 返回绝对值,先创建一个数字对象,再调用.abs对象 abs(-10) 3:执行加运 ...
- python情绪分析的意义_如何用Python和R对故事情节做情绪分析?
想知道一部没看过的影视剧能否符合自己口味,却又怕被剧透?没关系,我们可以用情绪分析来了解故事情节是否足够跌宕起伏.本文一步步教你如何用Python和R轻松愉快完成文本情绪分析.一起来试试吧. 烦恼 追 ...
- python异常处理有什么意义_怎么学好Python异常处理 五种处理机制是什么
在Python无法正确处理程序时,就会发生异常;当发生异常时,我们需要捕获它并进行处理,否则程序会终止运行.但如何处理异常呢?有哪些方法?接下来的就给大家分享Python异常处理机制. 想要学好Pyt ...
- python实训目的意义_20193120 实验四 Python综合实践
设计初衷: 程序设计来是面向实际使用过程的,不是为了程序而设计程序. 期末考试临近,最初记录平时作业成绩的时候,没有把每次分数统计的Excel表格整合在一起,最后老师需要课代表把所有的平时作业成绩汇总 ...
- python dtype=float 是32还是64_【Python】numpy数组用dtype=float16初始化的坑
[Python坑系列] 为了节约空间,使用numpy数组时候采用了float16,结果发现精度远远不达标 默认的floar64是最接近原本浮点数的 a = 0.0001 * np.ones(10,np ...
- android中sp的意义_简单谈谈Android中SP与DP的区别
从一开始写android程序,就被告知这些常识 一.dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp=1px.不同 ...
- 点线面的意义_浅析点线面在平面设计中作用与意义.doc
浅析点线面在平面设计中作用与意义 浅析点线面在平面设计中作用与意义 [摘 要]形态语言千姿万态,但平面形态要素可归结为点.线.面,通常称之为"视觉三要素".点.线.面纯属感觉存在, ...
- 小孩子学python有什么用途和价值_学Python有意义吗 就业前景如何?
学习Python仍然非常有意义.学习使用Python可以提高生产率,节省时间,并且具有更高的企业价值.工作机会多,市场需求大,就业前景仍然十分可观. 学Python的意义是什么? 谈到Python,很 ...
最新文章
- vue结合php增删改查实例,用vue.js写一个简单的增删改查
- mybatis plus 链式编程查询
- 汇编---输出AX的地址值
- 【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得
- http://www.ajaxload.info/
- 聊聊高并发系统之限流特技(二)作者:张开涛
- C语言 判断质数很简单
- [SHOI2008]仙人掌图
- 20220728使用电脑上的蓝牙和汇承科技的蓝牙模块HC-05配对蓝牙串口传输
- 程序化交易策略系统的构成
- 侦测卡 变色龙侦测卡 chameleon-Mini(迷你变色龙) (二)
- 新手福利:真机调试无需开发者证书
- 【射影几何05】齐次坐标系(Homogeneous coordinates)
- video mp4 网页播放器有声音无图像的解决办法
- photoshop 高手之路
- 美国天才黑客自杀:构建知识共享的世界
- 对计算机排版的分析,计算机排版技术水平对报纸质量的影响分析
- oracle 账号共享
- Python之发送邮件模块
- 【ffmpeg】生成的视频码率显示N/A或者0kb?
热门文章
- php dtu数据,4G DTU无线物联网数据传输终端
- 【转载】读音复杂的姓氏 -- 覃
- 音遇怎么玩?音遇APP技术和玩法解析
- vs安卓开发发布_【详细解析】手机系统两年就停更?其实安卓厂商也有苦衷......
- 【C#】线程安全的集合
- 新入手Mac配置前端环境教程
- m基于PCA-SA低纬紧致姿态空间学习算法的单目视频人体姿态提取matlab仿真
- java返回给前端的包装类型_第47节:Java当中的基本类型包装类
- win7系统的计算机里没有扫描设备,Win7系统扫描仪添加方法
- 移除safari浏览器点击出现蓝框