用于扩展列表的函数

时间:2017-10-07 13:36:47

标签: python python-2.7

如何创建可以获取任何列表并扩展它的函数。以下是我的评论:

  def list(l, p):

      return l.extend(p)

我也希望p具有任何性质。

1 个答案:

答案 0 :(得分:0)

请不要覆盖关键字,在此我根据我对您的问题的理解发布答案,这不是很清楚。

def my_list(l, *args):
    from itertools import chain
    sub_lists = filter(lambda x: isinstance(x, list), args)
    elements = filter(lambda x: not isinstance(x, list), args)
    l.extend(list(chain.from_iterable(sub_lists)))
    l.extend(list(elements))
    return l


l1 = [1, 2]
l2 = [3, 4]
l3 = [5, 6]
e = 7

new_list = my_list(l1, l2, l3, e, 8)

# [1, 2, 3, 4, 5, 6, 7, 8]
print(new_list)