def combine_lists(lt1, lt2):
if lt1[0] and lt2[0]:
lt = [lt1, lt2]
elif lt1[0] and not lt2[0]:
lt = [lt1]
elif not lt1[0] and lt2[0]:
lt = [lt2]
elif not lt1[0] and not lt2[0]:
lt = [None, None]
return lt
Run Code Online (Sandbox Code Playgroud)
上面的函数将2个列表组合成一个列表.例如,lt1可能是类似的东西['a', 'b']
什么是最简单的方法是将它从2个输入参数扩展到任意数量的列表作为输入.输出仍应是列表列表
- 编辑
lt1 = [1,2,3],lt2 = [4,5,6]的预期答案应为[[1,2,3],[4,5,6]]
如果我理解你的问题,你想要这样的事情:
>>> def combine(*args):
... return list(args)
...
>>> print combine([1,2,3], ['a','b','c'], [True, False])
[[1, 2, 3], ['a', 'b', 'c'], [True, False]]
Run Code Online (Sandbox Code Playgroud)
所以,我们使用位置参数从args(存储在一个tuple),并将其转换成一个列表.它适用于任意数量的参数,并且很乐意将任何内容(不仅仅是列表)组合到一个列表中.