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我认为您指的是字符串。