在Python中初始化大量布尔值

时间:2012-12-07 22:24:36

标签: python list boolean

  

可能重复:
  Initialize list with same bool value

我正在尝试在python 2.7中创建一个素数生成器,并计划使用一个布尔数组(或列表)来指示给定数字是否为素数。

假设我想初始化一个包含5000个布尔值的列表,如何在不必手动输入[True, True, ...]

的情况下这样做

2 个答案:

答案 0 :(得分:17)

你可以试试这个:

[True] * 5000

列表可以在Python中倍增(就像字符串一样):

>>> [True] * 3
[True, True, True]
>>> "abc" * 3
'abcabcabc'

答案 1 :(得分:0)

  

我正在尝试在python 2.7中创建一个素数生成器,并计划使用一个布尔数组(或列表)来指示给定数字是否为素数。

听起来真的很浪费。更好的方法是使set()只包含您需要的数字:

>>> primes = {2, 3, 5, 7}
>>> 4 in primes
False
>>> 5 in primes
True