Python 拼接列表在向后工作时不包括第一个元素


new_list = [i + 1 for i in range(16)]
sec_list = new_list[(len(new_list) - 2):0:-2]
print(new_list)
print(sec_list)

实际输出

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
[15, 13, 11, 9, 7, 5, 3]

期望输出:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
[15, 13, 11, 9, 7, 5, 3, 1] <---- I want the 1 to be present

只是想澄清一下这是如何工作的。我想[开始:结束:递增/递减]

这就是你需要的

sec_list = new_list[(len(new_list) - 2)::-2]
print(sec_list) # [15, 13, 11, 9, 7, 5, 3, 1]

你在第二个论点中犯了一个错误:

new_list[(len(new_list) - 2):0:-2]

开始:(len(new_list) - 2)停止: 0 步: -2

这意味着您停止在 0 项目上,这就是为什么不包括 1 的原因

你也可以在那里读到这个

相关内容

最新更新