鉴于以下列表:
f = [[1, 19], [1, 19], [1, 19], [2, 18], [16, 4], [10, 10]]
Run Code Online (Sandbox Code Playgroud)
我想获得每个子列表的最小值并创建:
f1 = [1, 1, 1, 2, 4, 10]
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
The*_*Guy 12
由于它是一个 Python 列表,您可以使用列表理解min
为每个子列表使用函数
[min(subList) for subList in f]
Run Code Online (Sandbox Code Playgroud)
输出:
[1, 1, 1, 2, 4, 10]
Run Code Online (Sandbox Code Playgroud)
或者,您甚至可以组合min
并map
在一起
list(map(min,f))
Run Code Online (Sandbox Code Playgroud)
一个简单的numpy
方法是使用axis=1
with np.min
:
>>> f1 = np.min(f, axis =1)
>>> f1
array([ 1, 1, 1, 2, 4, 10])
Run Code Online (Sandbox Code Playgroud)
一种非numpy
方式可能是映射min
到f
:
>>> list(map(min, f))
[1, 1, 1, 2, 4, 10]
Run Code Online (Sandbox Code Playgroud)
您可以使用内置的 min 函数
f = [[1, 19], [1, 19], [1, 19], [2, 18], [16, 4], [10, 10]]
f1 = []
for i in f:
f1.append(min(i))
f1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
365 次 |
最近记录: |