在您的第一个函数中mylist[0::n]
是[1, 3]
因为0::n
意味着第一个元素为0,其他元素在 第 一个之后的第n 个 元素中。正如Daniel所建议的,您可以使用mylist[::n]
n 个 元素。
在您的第二个函数中,索引从0开始且0 % 0
为0,因此它不会复制第一个元素。第三个元素(2 % 2
为0)相同。所以你要做的就是new_list = [item for index, item in enumerate(mylist) if (index + 1) % n != 0]