Python填充列表达到一定数量

时间:2014-04-24 04:29:27

标签: python

我有一个这样的列表:[1,2,3,4]

我想填写一下,让10NA项,其余的[1,2,3,4,NA,NA,NA,NA,NA,NA]

导致append

我可以使用if语句遍历它并{{1}}。我想知道是否有人的方式非常短(代码中的字符数最少)

2 个答案:

答案 0 :(得分:3)

假设x是您的清单:

x += ['NA'] * (10 - len(x))

答案 1 :(得分:2)

这是一种有效的方法

from itertools import repeat, islice, chain
print list(islice(chain([1, 2, 3, 4], repeat("NA")), 10))
# [1, 2, 3, 4, 'NA', 'NA', 'NA', 'NA', 'NA', 'NA']

即使您的实际数据不是一个列表,但任何可迭代的数据都可以使用。