我需要在python中创建一个列表,列出从0到N的所有数字最初为true。我必须使用 def shake(alist):
我尝试了一些其他代码,但我被告知我没有创建一个布尔列表,其中一切都是真的,我刚刚计算出最终错误的数字。我应该创建这个值全部为真的列表,然后在我设置的所有整数值为false的位置为素数的倍数,然后打印出剩余的真值列表。我被困在如何开始这个,因为我之前没有看到过这样的事情。任何正确方向的帮助都将受到赞赏。
答案 0 :(得分:2)
>>> N = 10
>>> [True] * N
[True, True, True, True, True, True, True, True, True, True]
答案 1 :(得分:1)
首先,要创建具有真值的列表,可以使用列表推导:
lst = [True for _ in range(N)]
或使用所有非零整数在bool上下文中评估为True的事实:
lst = map(bool, range(1, N+1))
稍后您可以在此列表中操作。要将某些值更改为False
(请记住,第一个索引为0
;)。
如果再次卡住,请显示一些代码,到目前为止,还有输入/预期输出。祝你好运。