不同维度的数组,取最大行列,并分别填充每个数组,保证所有数组维度一样?

不同维度的数组,取最大行列,并分别填充每个数组,保证所有数组维度一样?

python脚本名称为test.py:

#coding:gbk
def pad(a,pading=0):
    max_dim = max([len(_) for _ in a])
    for w in a:
        w_dim = len(w)
        pad_list = [pading] * (max_dim - w_dim)
        w.extend(pad_list)
    return a

if __name__ == '__main__':
    a = [[1,2,3],
        [4,5],
        [6,7,8,9,10]
    ]
    print("填充前:",a)
    pad(a,0)
    print("填充后: ",a)

运行命令:python test.py 后结果如下:

填充前: [[1, 2, 3], [4, 5], [6, 7, 8, 9, 10]]
填充后: [[1, 2, 3, 0, 0], [4, 5, 0, 0, 0], [6, 7, 8, 9, 10]]

python脚本名称为test.py:

#coding:gbk
def pad(a,pading=0):
max_dim = max([len(_) for _ in a])
for w in a:
w_dim = len(w)
pad_list = [pading] * (max_dim - w_dim)
w.extend(pad_list)
return a

if name == '__main__':
a = [[1,2,3],
[4,5],
[6,7,8,9,10]
]
print("填充前:",a)
pad(a,0)
print("填充后: ",a)
运行命令:python test.py 后结果如下:

填充前: [[1, 2, 3], [4, 5], [6, 7, 8, 9, 10]]
填充后: [[1, 2, 3, 0, 0], [4, 5, 0, 0, 0], [6, 7, 8, 9, 10]]