Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:选择一个较大的数字作为初始最大值_Python_Python 3.x - Fatal编程技术网

Python:选择一个较大的数字作为初始最大值

Python:选择一个较大的数字作为初始最大值,python,python-3.x,Python,Python 3.x,我来自Java背景,要在列表中查找最大值,可以执行以下操作: int max = Integer.MIN_VALUE; for (int value : list) max = Math.max(max, value); 忽略有更好的方法来解决这个特定问题,在Python中执行Integer.MIN_VALUE的等效方法是什么?或者,从来没有理由需要一个任意的非常小的数字吗?在python中,您可以这样做 from math import inf 'initialize maximum

我来自Java背景,要在列表中查找最大值,可以执行以下操作:

int max = Integer.MIN_VALUE;
for (int value : list)
    max = Math.max(max, value);

忽略有更好的方法来解决这个特定问题,在Python中执行
Integer.MIN_VALUE
的等效方法是什么?或者,从来没有理由需要一个任意的非常小的数字吗?

在python中,您可以这样做

from math import inf
'initialize maximum with very small value'
maximum=float('-inf')
'traverse the array'
for v in array:
    maximum=max(maximum,v)
print(maximum)
或者可以直接在给定数组上使用
max()
函数

print(max(array))

Python将int实现为无界的bigint。因此,没有等效于最小整数和最大整数。

float('-inf')
这是否回答了您的问题<代码>最大值=最大值(列表)?撇开不应该使用
list
作为变量名这一事实不谈,它确实会使一些算法更简洁,但由于Python3,整数只受可用内存的限制。。。长话短说,或者在您的用例中,您知道列表的所有值都是有界的(例如,它们是度量的结果,或者是从数据库中提取的),您可以使用该界,或者您必须初始化为无,如副本的可接受答案所示,或者使用
Math.inf
。默认设置为
MIN\u值看起来很尴尬。如果列表是空的怎么办?在python中,惯用的解决方案是
result=max(lst)
,如果
lst
为空,则会引发异常。这比对
MIN\u值
结果进行特殊的案例处理(假设该值在
lst
中无效)更具python风格。