如何转换:
[2, 4, array([ 3.]), array([ 4.]), array([ 5., 4.])]
到
[2,4,3,4,5,4]
我试过搜索,但解决方案适用于
[array([ 2.]), array([ 4.]), array([ 3.]), array([ 4.]), array([ 5., 4.])]
和
[[2],[4],[3],[4],[5,4]]
如何转换:
[2, 4, array([ 3.]), array([ 4.]), array([ 5., 4.])]
到
[2,4,3,4,5,4]
我试过搜索,但解决方案适用于
[array([ 2.]), array([ 4.]), array([ 3.]), array([ 4.]), array([ 5., 4.])]
和
[[2],[4],[3],[4],[5,4]]
import itertools
a = [2, 4, array([ 3.]), array([ 4.]), array([ 5., 4.])]
list(itertools.chain.from_iterable(asarray(b).ravel() for b in a))
我喜欢使用 sum 来扁平化事物。在您的情况下,您首先要将数组转换为列表,然后将数字转换为数字列表。因此,如果数组位于:
sum((list(x) if hasattr(x, '__iter__') else [x] for x in a), [])