Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.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 - Fatal编程技术网

Python 为什么我';我没有从这个数组中得到最小的数?

Python 为什么我';我没有从这个数组中得到最小的数?,python,Python,我有密码 arr = ['2', '-2', '-3', '1'] x = min(arr) print(x) 输出是-2,但我想得到-3,我不知道为什么数组的元素是字符串,所以min返回基于字母顺序比较的最小结果 如果要对这个特定数组进行数字排序,可以执行以下操作 x=min([int(i)表示arr中的i]) 然后x将具有值-3,正如预期的那样,因为您传递的是字符串,而不是整数。比较字符串时,-2按字母顺序比-3小。 将数组内容更改为整数,您将获得所需的输出 arr = [2, -2, -

我有密码

arr = ['2', '-2', '-3', '1']
x = min(arr)
print(x)

输出是-2,但我想得到-3,我不知道为什么数组的元素是字符串,所以
min
返回基于字母顺序比较的最小结果

如果要对这个特定数组进行数字排序,可以执行以下操作

x=min([int(i)表示arr中的i])


然后
x
将具有值
-3
,正如预期的那样

,因为您传递的是字符串,而不是整数。比较字符串时,
-2
按字母顺序比
-3
小。 将数组内容更改为整数,您将获得所需的输出

arr = [2, -2, -3, 1]
x = min(arr)
print(x)
使用内置方法将列表的每个字符串映射为一个整数:

arr = ['2', '-2', '-3', '1']
x = min(map(int, arr))
print(x)
输出:

-3

元素是字符串而不是ints,因为它们是
str
s,而不是
int
i我认为您指的是字符串。