我有三个不同长度的列表.
例如
List1 is of length 40
List2 is of length 42
List3 is of length 47
Run Code Online (Sandbox Code Playgroud)
如何使用内置的Python min()或任何其他方法来查找具有最小长度的列表?
我试过了:
min(len([List1,List2,List3]))
Run Code Online (Sandbox Code Playgroud)
但我明白了 TypeError: 'int' object is not iterable
Mar*_*ers 12
您需要len()单独申请每个列表:
shortest_length = min(len(List1), len(List2), len(List3))
Run Code Online (Sandbox Code Playgroud)
如果您已经有一系列列表,则可以使用map()函数或生成器表达式:
list_of_lists = [List1, List2, List3]
shortest_length = min(map(len, list_of_lists)) # map function
shortest_length = min(len(l) for l in list_of_lists) # generator expr
Run Code Online (Sandbox Code Playgroud)
要查找最短列表,而不是最短的长度,请使用以下key参数:
list_of_lists = [List1, List2, List3]
shortest_list = min(list_of_lists, key=len)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2392 次 |
| 最近记录: |