我在 python3 中遇到问题。我想排除 0 作为值之一,但我似乎无法做到这一点。我尝试添加另一个“and if”参数,但结果仍然包含 0。
我想要 1 到 100 之间的 6 倍数的值。0 显然不是其中之一。
x for x in range(100) if x % 6 == 0
我在 python3 中遇到问题。我想排除 0 作为值之一,但我似乎无法做到这一点。我尝试添加另一个“and if”参数,但结果仍然包含 0。
我想要 1 到 100 之间的 6 倍数的值。0 显然不是其中之一。
x for x in range(100) if x % 6 == 0
最直接的答案就是
range(6, 101, 6)
但是,如果您执行以下操作,您的原始方法应该可以工作:
[x for x in range(101) if x % 6 == 0 and x != 0]
(and if
不需要,它只是一个if
带有复合测试的子句)。
尝试:
x for x in range(100) if x%6 == 0 and x != 0
或者简单地说:
x for x in range(1,100) if x%6 == 0
如果要排除 0,请不要首先包含它:
range(1, 100)