Python 获取列表中的每个第 N 个元素

使用列表切片来获取列表中的每个第 N 个元素,例如 result = my_list[::2]。 方括号之间的值是可用于选择列表中每个第 N 个元素的 step

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# ✅ 获取从第二个元素开始的每隔二个元素的值
n = 2

result = my_list[n - 1::n]
print(result)  # 👉️ [2, 4, 6, 8]

# ✅ 获取从索引 0 开始的每隔一个元素

result = my_list[::2]
print(result)  # 👉️ [1, 3, 5, 7, 9]

# -------------------------------------------
# ✅ 获取从索引 0 开始的每三个元素
result = my_list[::3]

print(result)  # 👉️  [1, 4, 7]

# --------------------------------------------

# ✅ 获取从索引 2 开始的每个第二个元素

result = my_list[2::2]
print(result)  # 👉️ [3, 5, 7, 9]

我们使用列表切片来获取列表中的每个第 N 个元素。

如果需要从第 N 个元素开始选择列表中的每个第 N 个元素,例如 获取列表中的每个第二个元素,从第二个元素开始,指定 start索引。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# ✅ 获取从第二个元素开始的每个第二个元素
n = 2

result = my_list[n - 1::n]
print(result)  # 👉️ [2, 4, 6, 8]

开始索引是 n – 1,所以我们从第 N 个元素开始选择元素。

如果要获取列表中从索引 0 开始的每个第 N 个元素,请省略 start 索引。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# # ✅ 获取从索引 0 开始的每隔一个元素

result = my_list[::2]
print(result)  # 👉️ [1, 3, 5, 7, 9]

列表切片的语法是 my_list[start:stop:step]。 start 索引的值是包含的,而 stop 索引的值是不包含的。

为了获取列表中的每个第 N 个元素,我们只指定了一个步长值 step

当省略 start 和 stop 索引时,切片从列表的开头(索引 0)开始并到达末尾。

示例中的步长值设置为 2,因此我们获取索引为 0、2、4、6 等处的列表项。

换句话说,我们从索引 0 开始每隔一个元素进行选择。

如果 step 设置为 3,则列表切片每隔三个列表项选择一次。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]

result = my_list[::3]

print(result)  # 👉️  [1, 4, 7]

步长值设置为 3,因此我们选择索引 0、3、6、9 等处的列表项。

当省略 start 索引时,我们从索引 0 开始选择项目。

如果要获取列表中从特定索引开始的每个第 N 个元素,请为开始索引提供一个值。

这是一个从索引 2 开始并选择列表中每个第二个元素的示例。

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]


result = my_list[2::2]
print(result)  # 👉️ [3, 5, 7, 9]

列表切片从索引 2 开始,我们每隔一个项目(2、4、6 等)选择一次。