奇数偶数的列表理解函数

问题描述 投票:0回答:1

我正在尝试打印一个包含2个位于索引0和1的列表。一个列表包含偶数,另一个包含奇数。另外,我想通过列表理解来做到这一点,并且仅使用一个列表变量。

even_odd = [[],[]]
even_odd = [even_odd[0].append(a) if a%2 == 0 else even_odd[1].append(a) for a in range(20)]

预期输出:

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

使用列表理解

python python-3.x list list-comprehension
1个回答
0
投票

您可以通过在2个间隔内进行迭代来使用两个range进行此操作

even_odd = [list(range(0, 19, 2)), list(range(1, 20, 2))]
# [[0, 2, 4, 6, 8, 10, 12, 14, 16, 18], [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]]

0
投票

您可以通过两个间隔重复两个range来完成此操作>

even_odd = [list(range(0, 19, 2)), list(range(1, 20, 2))]
# [[0, 2, 4, 6, 8, 10, 12, 14, 16, 18], [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]]
© www.soinside.com 2019 - 2024. All rights reserved.