0

我在 python3 中遇到问题。我想排除 0 作为值之一,但我似乎无法做到这一点。我尝试添加另一个“and if”参数,但结果仍然包含 0。

我想要 1 到 100 之间的 6 倍数的值。0 显然不是其中之一。

x for x in range(100) if x % 6 == 0 
4

3 回答 3

2

最直接的答案就是

range(6, 101, 6)

但是,如果您执行以下操作,您的原始方法应该可以工作:

[x for x in range(101) if x % 6 == 0 and x != 0]

and if不需要,它只是一个if带有复合测试的子句)。

于 2012-09-05T16:08:07.017 回答
1

尝试:

x for x in range(100) if x%6 == 0 and x != 0

或者简单地说:

x for x in range(1,100) if x%6 == 0
于 2012-09-05T15:29:40.920 回答
1

如果要排除 0,请不要首先包含它:

range(1, 100)
于 2012-09-05T15:29:48.400 回答