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中使用的值范围是多少?相关推荐

  1. dbscan算法中 参数的意义_无监督机器学习中,最常见的聚类算法有哪些?

    在机器学习过程中,很多数据都具有特定值的目标变量,我们可以用它们来训练模型. 但是,大多数情况下,在处理实际问题时,数据不会带有预定义标签,因此我们需要开发能够对这些数据进行正确分类的机器学习模型,通 ...

  2. python中float可以和int计算吗_python 中int ,float,字符串的操作

    int 的功能 int: 1:bit_length(二进制位数的方法)返回当前数字占用的最小位数 2:__abs__ 返回绝对值,先创建一个数字对象,再调用.abs对象 abs(-10) 3:执行加运 ...

  3. python情绪分析的意义_如何用Python和R对故事情节做情绪分析?

    想知道一部没看过的影视剧能否符合自己口味,却又怕被剧透?没关系,我们可以用情绪分析来了解故事情节是否足够跌宕起伏.本文一步步教你如何用Python和R轻松愉快完成文本情绪分析.一起来试试吧. 烦恼 追 ...

  4. python异常处理有什么意义_怎么学好Python异常处理 五种处理机制是什么

    在Python无法正确处理程序时,就会发生异常;当发生异常时,我们需要捕获它并进行处理,否则程序会终止运行.但如何处理异常呢?有哪些方法?接下来的就给大家分享Python异常处理机制. 想要学好Pyt ...

  5. python实训目的意义_20193120 实验四 Python综合实践

    设计初衷: 程序设计来是面向实际使用过程的,不是为了程序而设计程序. 期末考试临近,最初记录平时作业成绩的时候,没有把每次分数统计的Excel表格整合在一起,最后老师需要课代表把所有的平时作业成绩汇总 ...

  6. python dtype=float 是32还是64_【Python】numpy数组用dtype=float16初始化的坑

    [Python坑系列] 为了节约空间,使用numpy数组时候采用了float16,结果发现精度远远不达标 默认的floar64是最接近原本浮点数的 a = 0.0001 * np.ones(10,np ...

  7. android中sp的意义_简单谈谈Android中SP与DP的区别

    从一开始写android程序,就被告知这些常识 一.dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp=1px.不同 ...

  8. 点线面的意义_浅析点线面在平面设计中作用与意义.doc

    浅析点线面在平面设计中作用与意义 浅析点线面在平面设计中作用与意义 [摘 要]形态语言千姿万态,但平面形态要素可归结为点.线.面,通常称之为"视觉三要素".点.线.面纯属感觉存在, ...

  9. 小孩子学python有什么用途和价值_学Python有意义吗 就业前景如何?

    学习Python仍然非常有意义.学习使用Python可以提高生产率,节省时间,并且具有更高的企业价值.工作机会多,市场需求大,就业前景仍然十分可观. 学Python的意义是什么? 谈到Python,很 ...

最新文章

  1. vue结合php增删改查实例,用vue.js写一个简单的增删改查
  2. mybatis plus 链式编程查询
  3. 汇编---输出AX的地址值
  4. 【华为云技术分享】如何设计高质量软件-领域驱动设计DDD(Domain-Driven Design)学习心得
  5. http://www.ajaxload.info/
  6. 聊聊高并发系统之限流特技(二)作者:张开涛
  7. C语言 判断质数很简单
  8. [SHOI2008]仙人掌图
  9. 20220728使用电脑上的蓝牙和汇承科技的蓝牙模块HC-05配对蓝牙串口传输
  10. 程序化交易策略系统的构成
  11. 侦测卡 变色龙侦测卡 chameleon-Mini(迷你变色龙) (二)
  12. 新手福利:真机调试无需开发者证书
  13. 【射影几何05】齐次坐标系(Homogeneous coordinates)
  14. video mp4 网页播放器有声音无图像的解决办法
  15. photoshop 高手之路
  16. 美国天才黑客自杀:构建知识共享的世界
  17. 对计算机排版的分析,计算机排版技术水平对报纸质量的影响分析
  18. oracle 账号共享
  19. Python之发送邮件模块
  20. 【ffmpeg】生成的视频码率显示N/A或者0kb?

热门文章

  1. php dtu数据,4G DTU无线物联网数据传输终端
  2. 【转载】读音复杂的姓氏 -- 覃
  3. 音遇怎么玩?音遇APP技术和玩法解析
  4. vs安卓开发发布_【详细解析】手机系统两年就停更?其实安卓厂商也有苦衷......
  5. 【C#】线程安全的集合
  6. 新入手Mac配置前端环境教程
  7. m基于PCA-SA低纬紧致姿态空间学习算法的单目视频人体姿态提取matlab仿真
  8. java返回给前端的包装类型_第47节:Java当中的基本类型包装类
  9. win7系统的计算机里没有扫描设备,Win7系统扫描仪添加方法
  10. 移除safari浏览器点击出现蓝框