Python极值整数的边界探讨分析
第一次接触 Python 时,是把它作为一个智能计算器使用的。普通的计算器计算很大的数时都会报错,比如计算 9 的 531441 次方,计算器就提示我不是数字:
然后我就试了下 Python 解释器
这个数字共有 507124 位,50 万位,不吃不喝不睡,1 秒钟读一位,要读 5 天多,足以说明,Python 中的整数是没有边界的,只是数越大,计算时间的越长而已。
但是,在编程的时候,如果要取最小值,通常要定义一个变量 min,初始值设置为最大,然后计算的结果比这个 min 小的时候,就把这个结果赋值给 min,那如何在 Python 中定义这个初始值呢?
比如说,在 Java 中,我们有 Integer.MIN_VALUE
和 Integer.MAX_VALUE
,Python 有类似的固定值么?
答:有,虽然 Python 中的 int 是没有边界的,但是如果你只需要一个比其他数字更大的数字,你可以使用 float('inf')
, 以类似的方式,比其他所有数字都小:float('-inf')
,这种方法适用于 Python 2 和 3。
>>> float('inf') > 10**100 True >>> float('-inf') < - 10**100 True >>>
不过,Java 的 Long.MAX_VALUE
相当于 Python3 的 sys.maxsize
和 Python2 的 sys.maxint
,Java 的 Long.MIN_VALUE
相当于 Python3 的 -sys.maxsize -1
和 Python2 -sys.maxint - 1
。
>>> sys.maxsize 9223372036854775807 >>> -sys.maxsize-1 -9223372036854775808 >>>
最后的话
Python 中 float('inf') 和 float('-inf') 代表着无穷大和无穷小,是真正的极值,是不是很完美的数学表达?我觉得这也是一种 Python 之美吧。
以上就是Python极值整数的边界探讨分析的详细内容,更多关于Python极值整数的边界的资料请关注我们其它相关文章!
相关推荐
-
python 遗传算法求函数极值的实现代码
废话不多说,大家直接看代码吧! """遗传算法实现求函数极大值-Zjh""" import numpy as np import random import matplotlib.pyplot as plt class Ga(): """求出二进制编码的长度""" def __init__(self): self.boundsbegin = -2 self.boundsend = 3 p
-
Python3中的最大整数和最大浮点数实例
Python中的最大整数 Python中可以通过sys模块来得到int的最大值. python2中使用的方法是 import sys max = sys.maxint print (max) python3中使用的方法是: import sys max = sys.maxsize print (max) Python中获得最大浮点数 方法一:使用sys模块 >>> import sys >>> sys.float_info sys.floatinfo(max=1.797
-
实例讲解Python中整数的最大值输出
在Python中可以存储很大的值,如下面的Python示例程序: x = 10000000000000000000000000000000000000000000; x = x + 1 print (x) 输出: 10000000000000000000000000000000000000000001 在Python中,整数的值不受位数的限制,可以扩展到可用内存的限制.因此,我们永远不需要任何特殊的安排来存储大数字(想象一下在C / C ++中进行上述算术). 在Python 3中,对于所有类型
-
python求最大值最小值方法总结
方法一(常规): 代码: count = int(input('输入数据个数:\n')) a = 1 while a <= count: num = int(input('请输入第{}个数:'.format(a))) #字符串中的方法 if a == 1: #这句一定会执行,而且只执行一次,目的就是让你输入的第一个数作为根据与之后的数比较 max = min = num #第二个及以后的数都会走else, else: #第一次走else时,比较中的min和max都是你第一次输入的数,以后走els
-
python求最大值,不使用内置函数的实现方法
利用python进行求解,求解的要求是不能使用python内部封装好的函数例如:max way1: def findmax(data,n): if n==1: return data[0] else: maxi=data[0] for i in data[1:]: if maxi<i: maxi=i return maxi data=[1,2,34,4] print(findmax(data,len(data))) code result: 34 way2: def getMax(arr): f
-
Python极值整数的边界探讨分析
第一次接触 Python 时,是把它作为一个智能计算器使用的.普通的计算器计算很大的数时都会报错,比如计算 9 的 531441 次方,计算器就提示我不是数字: 然后我就试了下 Python 解释器 这个数字共有 507124 位,50 万位,不吃不喝不睡,1 秒钟读一位,要读 5 天多,足以说明,Python 中的整数是没有边界的,只是数越大,计算时间的越长而已. 但是,在编程的时候,如果要取最小值,通常要定义一个变量 min,初始值设置为最大,然后计算的结果比这个 min 小的时候,就把这个
-
5个很好的Python面试题问题答案及分析
本文的主要内容是向大家分享几个Python面试中的T题目,同时给出了答案并对其进行分析,具体如下. 本文的原文是5 Great Python Interview Questions,同时谢谢 @非乌龟 指出我的疏漏,没有来源标记,也赞其细心,希望看文章的同时大家都能看下原文,因为每个人的理解不一致,原汁原味的最有帮助,我翻译很多文章的目的一是为了自己以后找资料方便:二是作为一个索引,以后再看原文的时候,能更加快捷.其目的还是希望大家能看原文的. 问题一:以下的代码的输出将是什么? 说出你的答案并
-
对python中的xlsxwriter库简单分析
一.xlsxwriter 基本用法,创建 xlsx 文件并添加数据 官方文档:http://xlsxwriter.readthedocs.org/ xlsxwriter 可以操作 xls 格式文件 注意:xlsxwriter 只能创建新文件,不可以修改原有文件.如果创建新文件时与原有文件同名,则会覆盖原有文件 Linux 下安装: sudo pip install XlsxWriter Windows 下安装: pip install XlsxWriter # coding=utf-8 from
-
python shutil文件操作工具使用实例分析
这篇文章主要介绍了python shutil文件操作工具使用实例分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python中的shutil是一种高层次的文件操作工具,主要强大之处在于对文件的复制与删除操作更友好 一:shutil. copyfileobj(fsrc,fdst [23]) 将 fsrc 的内容复制到 fdst.如果给出整数长度,则为缓冲区大小.注意,fsrc.fdst,必须是已经打开的文件,而不能传入文件名的字符串 def
-
如何利用Python实现简单C++程序范围分析
目录 1.实验说明 2.项目使用 3.算法原理 3.1构建CFG 3.2构建ConstraintGraph 3.3构建E-SSAConstraintGraph 3.4三步法 3.4.1Widen 3.4.2FutureResolution& Narrow 4.实验结果 5.总结 1. 实验说明 问题要求:针对静态单赋值(SSA)形式的函数中间代码输入,输出函数返回值的范围 实现思路: 基本根据 2013年在CGO会议上提出的“三步法”范围分析法加以实现[3],求得各个变量的范围 算法优势:空间复
-
python数据挖掘Apriori算法实现关联分析
目录 摘要: 关联分析 Apriori原理 算法实现 挖掘关联规则 利用Apriori算法解决实际问题 发现毒蘑菇的相似特征 总结: 摘要: 主要是讲解一些数据挖掘中频繁模式挖掘的Apriori算法原理应用实践 当我们买东西的时候,我们会发现物品展示方式是不同,购物以后优惠券以及用户忠诚度也是不同的,但是这些来源都是大量数据的分析,为了从顾客身上获得尽可能多的利润,所以需要用各种技术来达到目的. 通过查看哪些商品一起购物可以帮助商店了解客户的购买行为.这种从大规模数据集中寻找物品间的隐含关系被称
-
python的变量与赋值详细分析
python的变量与赋值 1.变量的命名规则 变量其实通过一个标记调用内存中的值,而变量名就是这个标记的名称,但是万一这个标记已经被提前占用或者解释器认为这个标记是不合法的,那么就会报错.下面总结了一下变量的命名规则: 1.不能使用python的关键字,也就是说标记不能被提前占用,python的关键字包括: ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', '
-
python的exec、eval使用分析
简介 python 动态执行字符串代码片段(也可以是文件), 一般会用到exec,eval. exec exec_stmt ::= "exec" or_expr ["in" expression ["," expression]] 注意:exec 是一个语法声明,不是一个函数.也就是说和if,for一样. 官方文档对于exec的解释 This statement supports dynamic execution of Python code.
-
Python中的默认参数实例分析
本文研究的主要是Python中的默认参数的相关内容,具体如下. 熟悉C++语言的可以知道,C++语言中的默认参数是写在函数声明中的,为语法糖,与函数的调用无关,是在函数调用的时候由编译器补齐参数然后进行调用. 而Python中的默认参数与其有相当大的不一样,如下例中的代码执行结果会是什么呢? def test_parameter(a, dfp=[]): dfp.append(a) print(dfp) test_parameter(1) test_parameter(2) test_parame
-
Python反转序列的方法实例分析
本文实例讲述了Python反转序列的方法.分享给大家供大家参考,具体如下: 序列是python中最基本的数据结构,序列中每个元素都有一个跟位置相关的序号,也称为索引.对于一个有N个元素的序列来说, 从左到右索引:0,1,2,--N-1 从右到左索引:-1,-2,-3---N 1>列表反转 >>> l=[1,2,3,4] >>> ll=l[::-1] >>> l [1, 2, 3, 4] >>> ll [4, 3, 2, 1] &
随机推荐
- JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
- JSP MySQL插入数据时出现中文乱码问题的解决方法
- win32使用openfilename浏览文件窗口示例
- wmic 命令用法及实例
- java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解
- 详解 swift3.0 可选绑定共用同一块内存空间的实例
- oracle中左填充(lpad)和右填充(rpad)的介绍与用法
- ASP.NET存储过程实现分页效果(三层架构)
- PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
- 使用Protocol Buffers的C语言拓展提速Python程序的示例
- 在Docker中使用MySQL的教程
- jQuery回调方法使用示例
- jQuery实现的瀑布流加载效果示例
- Java虚拟机装载和初始化一个class类代码解析
- 最近较流行的效果 Android自定义View实现倾斜列表/图片
- Android编程之数据库Sql编程实例分析
- 完美解决Java中的线程安全问题
- Android开发中那些需要注意的坑
- 最新的CocoaPods安装教程
- Spring相关知识点的总结与梳理