设置列表的最小长度?

时间:2011-11-07 19:01:20

标签: python

我有一个Python列表。我不确切知道它有多长,但我知道它长度不到15个。

我想将它填充到15个项目长度,为我需要添加的所有项目附加空字符串。

有没有一种有效的方法在Python中执行此操作?

我希望:

myarr = myarr[:15]

可能有效,但事实并非如此。

目前我有:

if len(myarr) < 15:
    for i in range(15 - len(myarr)):
        myarr.append('')

更紧凑的建议?

3 个答案:

答案 0 :(得分:9)

myarr += [""] * (15 - len(myarr))

答案 1 :(得分:4)

采用oneliner方式:

myarr.extend([""]* (15 - len(myarr)))

答案 2 :(得分:3)

使用纯切片(不调用len):

padded = (source + [''] * MAX_LEN)[:MAX_LEN]

如果多次调用,则在模块范围初始化一次ALL_EMPTY列表。然后做:

padded = (source + ALL_EMPTY)[:MAX_LEN]
相关问题