您好,我有两个列表。predicted = [1.0, 0.0, 0.0, 0.0, 2.0, 1.0]actualnum = [0.0, 0.0, 1.0, 0.0, 2.0, 1.0]我想知道如何按每个数字比较这两个列表并获得多少匹配的数字。基本上:if predicted[0] matches actualnum[0] then 1if predicted[0] matches actualnum[1] then 0所以我会:predicted[0] not equal to actualnum[0] = 0predicted[1] equal to actualnum[1] = 1predicted[2] not equal to actualnum[2] = 1etc. 最后,我将参加 6 场比赛中的 4 场。我怎样才能为此制作for循环。我看过示例,但只说 set(a)&set(b) - 但这仅显示集合中有多少相似的数字。但是,我真的只需要将同一索引 [0] 中的值仅与 [0] 和 [1] 中的值进行比较,仅与 [1] 进行比较。
1 回答

噜噜哒
TA贡献1784条经验 获得超7个赞
您可以ith
通过多种不同方式访问这两个列表的值。以下是一些选项:
for i in range(len(predicted)): p = predicted[i] a = actualnum[i]
for i, p in enumerate(predicted): a = actualnum[i]
for p, a in zip(predicted, actualnum):
在循环体中,简单地比较p
并a
打印你喜欢的任何东西,看它们是否相等。
如果你只想知道有多少值匹配,你可以这样做:
matches = sum(1 for p, a in zip(predicted, actualnum) if p == a)
添加回答
举报
0/150
提交
取消