You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅调用一次List2,基于其值对List1进行切片截取?

可行的实现方式

当然有,以下是几种简洁的实现方法,都只调用一次List2:

  • 推荐写法:slice函数+解包操作
    这是最符合Python风格的简洁写法,利用*解包List2的两个元素作为slice函数的起止参数,再传入列表切片:

    List1 = [3,4,5,6,8,3,2,4,6,7,8,6]
    List2 = [4, 7]
    result = List1[slice(*List2)]
    

    这段代码和List1[List2[0]:List2[1]]完全等价,slice(*List2)会被解析为slice(4,7),实现相同的切片效果,且只引用了一次List2。

  • 另类写法(可读性稍弱)
    如果你追求极致简短,也可以直接调用列表的__getitem__方法配合解包,但这种写法可读性不如上面的方案,不推荐在正式代码中使用:

    result = List1.__getitem__(slice(*List2))
    

内容的提问来源于stack exchange,提问作者Bogaso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:00:57