【发布时间】:2011-12-20 19:33:28
【问题描述】:
在 Python 2.7 中工作。
我有两个不同的列表,A 和 B(简化以使解释更清楚)。
A = [1, 2, 4, 3, 5]
B = [2, 0, 3, 2, 1]
我希望能够比较每个列表 ex- A[1] v B[1]- 的位置值,并将 A 较大的实例(A“获胜”)加起来,当两个值相同(A“平局”),以及 B 较大时的实例(A“损失”)。
为了让事情变得更复杂一点,我还使用 random.shuffle() 每次通过 for 循环随机化列表的顺序。
我第一次尝试使用:
def listComp(listA, listB):
Awins = 0
Aties = 0
Alosses = 0
for i in range(0, whatever):
random.shuffle(listA)
random.shuffle(listB)
if A[0] > B[0]:
Awins += 1
elif A[0] == B[0]:
Aties += 1
elif A[0] < B[0}:
Alosses += 1
然后在每个 if 语句中,编写额外的 if 语句来解释所有可能的变化。显然,随着列表大小的增加,这会变得非常耗费人力。一定有更简单的方法吧?
【问题讨论】:
标签: python list loops random if-statement