繁体   English   中英

尝试在同一索引处添加多个列表的元素

[英]Trying to add elements at the same index for more than one list

我正在尝试制作一个具有参数的函数,该参数是一个由4个元素组成的列表的列表,该列表表示批准哪些团队成员。 内部(四元素)列表的顺序为['team1','team2','team3','team4']

人们将对至少一个团队投赞成票,对另外三个团队投反对票。 每个“是”代表一票。

输出是一个列表,其中每个团队的总金额为“是”,顺序与原始顺序相同。

一个例子是:

选举([[['YES','NO','NO','NO'],['NO','NO','NO','YES'],['YES','NO','NO ','没有']])

将会返回([2,0,0,1])

你能帮我吗?。我是python的新手,我只是想让每个人的投票数都像[1,0,0,0]一样,但是我无法将每个列表加成一张。

希望能有所帮助。

vote1 = ['YES', 'NO', 'NO', 'NO']
vote2 = ['NO', 'NO', 'NO', 'YES']
vote3 = ['YES', 'NO','NO','NO']

votelist = [vote1, vote2, vote3]

def electing(votelist):
    return [votes.count("YES") for votes in zip(*votelist)]

Python没有像大多数语言一样具有for循环,这可能会使使用该语言的新用户感到困惑。 在这种情况下(您希望从零到任意长度进行计数),可以使用range函数:

for i in range(4):
    ...

(大致)与:

for i in [0,1,2,3]:
    ...

使用此方法并尝试编写代码,如果您还有其他问题,请显示到目前为止的尝试,我们可能会为您提供更多帮助。

附注:有关执行所需操作的更高级方法,建议您查看sumzip内置插件以及列表推导的概念。 这些可以将您的任务简化为一线...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM