打包最大长度为n的可变长度列表的惯用方式
问题内容:
我正在读取文件并像这样解压每一行:
for line in filter(fh):
a, b, c, d = line.split()
但是,行可能比我希望解包的变量具有更多或更少的列。在数量较少的情况下,我想分配None
给悬挂变量,在数量较多的情况下,我想忽略它们。惯用的方法是什么?我正在使用python
2.7。
问题答案:
固定列表的长度,用填充None
。
def fixLength(lst, length):
return (lst + [None] * length)[:length]