列表中的for循环-使用列表中的位置替换

2024-04-24 22:22:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一个列表,在第一个数字上加1,然后用0替换剩下的数字。我尝试了很多不同的方法,但我要么只替换第二个项目,要么我的第一个项目消失,要么它不简单的工作。你知道吗

以下是我所拥有的:

key2=[8,10,10,10]

key2[0]+=1
for item in key2[1:]:
    item=0
    key2.append(item)

这是给我的

[9, 10, 10, 10, 0, 0, 0]

但是我需要去掉所有的10。我如何做for循环来得到这个结果[9,0,0,0]?你知道吗


Tags: 项目方法in列表for数字itemkey2
3条回答
>>> key2=[8,10,10,10]
>>> key2[0], key2[1:] = key2[0]+1, [ 0 for item in key2[1:]]
>>> key2
[9, 0, 0, 0]
for index in range(1, len(key2)):
    key2[index]=0

在这段代码中,我们用0替换从第二个索引到最后一个索引的项。你知道吗

一行,使用enumerate()

lst = [ele+1 if i == 0 else 0 for i, ele in enumerate(lst)]

相关问题 更多 >