将列表解压缩到元组的中间

发布于 2021-01-29 16:48:58

我有一个大小不确定的清单:

l = [...]

我想将此列表解压缩为具有其他值的元组,但是以下操作失败:

t = ("AA", "B", *l, "C")

如何形成以下形式?

t = ("AA", "B", l[0], ..., l[:-1], "C")

编辑:最好只做一个切片[a:b]:

t = ("AA", "B", l[a], ..., l[b], "C")
关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    从python 3.5开始,您现在可以使用第一种方法:

    >>> l = [1, 2, 3]
    >>> t = ("AA", "B", *l, "C")
    >>> t
    ('AA', 'B', 1, 2, 3, 'C')
    

    您可以按预期使用切片:

    >>> ("AA", "B", *l[:-1], "C")
    ('AA', 'B', 1, 2, 'C')
    

    相关PEP,以供参考:PEP448



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看