Я бы хотел усечь или заполнить список. Например. для размера 4:
[1,2,3] -> [1,2,3,0]
[1,2,3,4,5] -> [1,2,3,4]
Я вижу пару способов:
def trp(l, n):
""" Truncate or pad a list """
r = l[:n]
if len(r) < n:
r.extend([0] * (n - len(r)))
return r
Или более короткий, но менее эффективный:
map(lambda x, y: x if x else 0, m[0:n], [0] * n)
Есть ли более элегантный способ сделать это?