Arrays 如何打印每个子阵列的最后一个值(Numpy)

Arrays 如何打印每个子阵列的最后一个值(Numpy),arrays,python-3.x,numpy,list-comprehension,Arrays,Python 3.x,Numpy,List Comprehension,我已经在上面的数组中创建了一个综合列表,但是,如果不创建一个新的for循环,我无法只打印每个子数组的最后一个元素。 有人能解释一下如何组合这两个循环吗 import numpy as np b = np.array([[[0.55867166, 0.06210792, 0.08147297], [0.82579068, 0.91512478, 0.06833034]], [[0.05440634, 0.65857693, 0.30296619],

我已经在上面的数组中创建了一个综合列表,但是,如果不创建一个新的for循环,我无法只打印每个子数组的最后一个元素。 有人能解释一下如何组合这两个循环吗

import numpy as np

b = np.array([[[0.55867166, 0.06210792, 0.08147297],
        [0.82579068, 0.91512478, 0.06833034]],

       [[0.05440634, 0.65857693, 0.30296619],
        [0.06769833, 0.96031863, 0.51293743]],

       [[0.09143215, 0.71893382, 0.45850679],
        [0.58256464, 0.59005654, 0.56266457]],

       [[0.71600294, 0.87392666, 0.11434044],
        [0.8694668 , 0.65669313, 0.10708681]],

       [[0.07529684, 0.46470767, 0.47984544],
        [0.65368638, 0.14901286, 0.23760688]]])

list5 = [[[e for e in r if e <= 0.5] for r in s] for s in b]
print(list5)
for i in list5:
    print((i[-1]))
将numpy导入为np
b=np.数组([[0.55867166,0.06210792,0.08147297],
[0.82579068, 0.91512478, 0.06833034]],
[[0.05440634, 0.65857693, 0.30296619],
[0.06769833, 0.96031863, 0.51293743]],
[[0.09143215, 0.71893382, 0.45850679],
[0.58256464, 0.59005654, 0.56266457]],
[[0.71600294, 0.87392666, 0.11434044],
[0.8694668 , 0.65669313, 0.10708681]],
[[0.07529684, 0.46470767, 0.47984544],
[0.65368638, 0.14901286, 0.23760688]]])

list5=[[[e for e in r如果e你应该显示这段代码的结果!我们大多数人都不能运行代码menttally(或者太懒了)

[46]中的
:b.形状
Out[46]:(5,2,3)

在[47]:list5=[[[e for e In r如果e你应该显示这段代码的结果!我们大多数人都不能运行这段代码(或者太懒了)

[46]中的
:b.形状
Out[46]:(5,2,3)

在[47]:list5=[[[e代表r中的e如果e是指
list5
中列表的最后一个元素?我的目标是从bdo中获取每个子数组中的最后一个值。你是指
list5
中列表的最后一个元素吗?我的目标是从bwell中获取每个子数组中的最后一个值,它超过了我的解决方案
r=[r]这比我的解决方案要好
In [46]: b.shape
Out[46]: (5, 2, 3)
In [47]: list5 = [[[e for e in r if e <= 0.5] for r in s] for s in b]
In [48]: list5
Out[48]: 
[[[0.06210792, 0.08147297], [0.06833034]],
 [[0.05440634, 0.30296619], [0.06769833]],
 [[0.09143215, 0.45850679], []],
 [[0.11434044], [0.10708681]],
 [[0.07529684, 0.46470767, 0.47984544], [0.14901286, 0.23760688]]]
In [49]: for i in list5:
    ...:     print((i[-1]))
    ...: 
[0.06833034]
[0.06769833]
[]
[0.10708681]
[0.14901286, 0.23760688]
In [52]: list6 = [[r[r<=0.5] for r in s][-1] for s in b]
In [53]: list6
Out[53]: 
[array([0.06833034]),
 array([0.06769833]),
 array([], dtype=float64),
 array([0.10708681]),
 array([0.14901286, 0.23760688])]
In [54]: [r[r<=0.5] for r in b[:,-1,:]]
Out[54]: 
[array([0.06833034]),
 array([0.06769833]),
 array([], dtype=float64),
 array([0.10708681]),
 array([0.14901286, 0.23760688])]