如何在python中增加列表中的值?

2024-09-28 01:25:13 发布

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

我有一个名为quan = [0, 0 ,0, 0]的列表。我要求用户输入0到3之间的整数,并将它们存储在另一个名为items的列表中。例如:items = [0, 1, 1, 2, 2, 2]。 对于项目中的每个int,我想增加quan中相应的位置,即在本例中quan应该变成[1, 2, 3, 0]

for i in items:
    quan[items[i]] += 1

到目前为止,我都以一个下线错误而告终。如能朝正确方向轻推,将不胜感激。 谢谢


Tags: 项目用户in列表for错误items整数
3条回答

正确的代码是:

for i in items:
    quan[i]+=1

EOL可能是由于代码中某个地方的输入错误造成的

下面的代码循环将只迭代4次,而不是项列表中的元素数。 列表的count()将返回该元素的出现次数

quan = [0, 0, 0, 0]
items = [0, 1, 1, 2, 2, 2]


for i in range(4):
    quan[i] += items.count(i)

print(quan)

或者

quan = [quan[i]+items.count(i) for i in range(4)]

关于所提问题:

quan = [0, 0, 0, 0]
items = [0, 1, 1, 2, 2, 2]

for i in items:
    quan[i] += 1

但是,在大多数实际情况下,您可能希望使用^{},它以稍微不同的形式提供相同的答案:

from collections import Counter

items = [0, 1, 1, 2, 2, 2]
quan = Counter(items)

相关问题 更多 >

    热门问题