Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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_List_Minimum - Fatal编程技术网

Python 在列表列表中查找最小值

Python 在列表列表中查找最小值,python,list,minimum,Python,List,Minimum,我想在Python中的列表列表中找到最小的值。例如: ls = [[2,3,5],[8,1,10]] ls中的最小值为1。我怎样才能用一种简单的方式得到它 min_abs = min([min(l) for l in ls]) 您可以简单地尝试以下方法: res = min(min(ls, key=min)) min(ls中的元素代表subls中的元素)到目前为止您尝试了什么?请阅读建议的dupe()与此问题关系不大。@cs95啊,很抱歉我没有看到,如果找到合适的dupe(我自己找不

我想在Python中的列表列表中找到最小的值。例如:

ls = [[2,3,5],[8,1,10]]
ls
中的最小值为
1
。我怎样才能用一种简单的方式得到它

min_abs = min([min(l) for l in ls])




您可以简单地尝试以下方法:

res = min(min(ls, key=min))

min(ls中的元素代表subls中的元素)
到目前为止您尝试了什么?请阅读建议的dupe()与此问题关系不大。@cs95啊,很抱歉我没有看到,如果找到合适的dupe(我自己找不到),请务必关闭它。这是一个更一般的情况,但如果这对你有好处,那对我也有好处。@jdehesa这不是一个完美的骗局,只是更一般一点。我将继续并再次关闭它。您可以跳过
[
]
,这样可以避免临时列表。像这样构建最小值列表比实际需要的更浪费。有关计时比较,请参阅。它有重复,但不适用于这个确切的问题@DeveshKumarSingh似乎是一种自我问答的尝试,所以我发布了我认为是不错的选择。
# flatten `ls`, then find the min
min(y for x in ls for y in x)
# 1
# use itertools.chain to flatten `ls`
min(itertools.chain.from_iterable(ls))
# 1
ls = [[2, 3, 5], [8, 1, 10]] * 10000

%timeit min(y for x in ls for y in x)            # 7.31 ms ± 64.9 µs
%timeit min([min(l) for l in ls])                # 6.24 ms ± 56.9 µs
%timeit min(map(min, ls))                        # 5.44 ms ± 151 µs
%timeit min(min(ls, key=min))                    # 5.28 ms ± 129 µs
%timeit min(itertools.chain.from_iterable(ls))   # 2.67 ms ± 62.5 µs
res = min(min(ls, key=min))