在Python中初始化大量布尔值

Fla*_*lau 8 python boolean list

可能重复:
使用相同的bool值初始化列表

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

假设我想初始化5000个布尔值的列表,如何在不必手动输入的情况下这样做 [True, True, ...]

ars*_*jii 20

你可以试试这个:

[True] * 5000
Run Code Online (Sandbox Code Playgroud)

列表可以在Python中相乘(可以像字符串一样):

>>> [True] * 3
[True, True, True]
>>> "abc" * 3
'abcabcabc'
Run Code Online (Sandbox Code Playgroud)

  • 正如旁注:这适用于基本类型的列表,例如数字和布尔值,但不适用于对象列表(或列表,列表或字典等列表),因为在这种情况下列表将包含5000 times _the same_ instance. (4认同)