相关疑难解决方法(0)

整数的最大值和最小值

我在python中寻找整数的最小值和最大值.例如,在Java中,我们有Integer.MIN_VALUEInteger.MAX_VALUE.在python中有这样的东西吗?

python integer

648
推荐指数
9
解决办法
86万
查看次数

如何在Python中表示无限数?

如何在python中表示无限数?无论您在程序中输入哪个数字,任何数字都不应大于此无穷大的表示.

python infinite infinity

511
推荐指数
9
解决办法
53万
查看次数

Python 3中的sys.maxint是什么?

我一直试图找出如何表示一个最大整数,我已经阅读使用"sys.maxint".但是,在Python 3中,当我调用它时,我得到:

AttributeError: module 'object' has no attribute 'maxint'
Run Code Online (Sandbox Code Playgroud)

python python-3.x

129
推荐指数
5
解决办法
17万
查看次数

32
推荐指数
5
解决办法
5万
查看次数

Python数量限制

我知道在大多数情况下,如果不是所有的编程语言,整数,浮点数等都可以保留最大数量,无论是无符号还是有符号.例如pascal的int类型最多只能容纳32768~.

我想知道的是,python的int和浮点变量的限制是什么.我尝试了一个小程序来产生非常大的数字,但我没有遇到任何错误.它甚至对这些变量的大小有限制吗?

我看了一下文档,找不到我要找的东西:/

非常感谢帮助,谢谢!

python numbers limit bit

22
推荐指数
3
解决办法
4万
查看次数

为什么Python的float会为一些非常长的输入引发ValueError?

在x64上的Python 2.7.9上,我看到以下行为:

>>> float("10"*(2**28))
inf
>>> float("10"*(2**29))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: could not convert string to float: 10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010
>>> float("0"*(2**33))
0.0
>>> float("0." + "0"*(2**32))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: could not convert string to float: 0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Run Code Online (Sandbox Code Playgroud)

除非有一些更深层次的理由我错过了这违反了最少的惊喜.当我得到ValueError时,"10"*(2**29)我认为它只是对很长字符串的限制,但后来"0"*(2**33)工作了.这是怎么回事?任何人都可以证明为什么这种行为不是POLA错误(如果可能是一个相对无关的错误)?

python

9
推荐指数
1
解决办法
539
查看次数

整个浮点数与int溢出错误

尝试在你的Python 3.3.2 IDLE中输入这个,希望我不是唯一一个想知道并且我愿意理解为什么会这样的人.

>>> n = 331
>>> d = 165.0 # float number
>>> a = 174
>>> 
>>> a**d % n
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    a**d % n
OverflowError: (34, 'Result too large')

>>> d = int(d)
>>> a**d % n
330
Run Code Online (Sandbox Code Playgroud)

浮标究竟是如何工作的,为什么会发生这种情况?谢谢.

python python-3.x

1
推荐指数
1
解决办法
193
查看次数

在python中创造最大的数字

我正在寻找一个Python对象,保证比任何给定的比较更大int.它应该是可移植的,独立于平台的,并且可以在Python 2.7+和3.x上运行.

例如:

x = float('inf')
while True:
    n = next(my_gen)
    if my_calc(n):
        x = min(n, x)
        if my_cond(x):
            break
Run Code Online (Sandbox Code Playgroud)

在这里,我已经用于float('inf')此目的,因为它似乎行为正确.但这感觉很脏,因为我认为它依赖于一些潜在的浮动规范,我不知道这是依赖于平台还是以意想不到的方式打破.

我知道我可以创建自己的类并定义比较运算符,但我认为可能存在一种现有的内置方式.

这样使用安全float('inf')吗?是否有一种不那么丑陋的方式来创造这个"最大整数"?

python integer comparison-operators

1
推荐指数
1
解决办法
304
查看次数