Skip to main content
 首页 » 编程设计

python之如何只循环一次列表中的关系

2025年05月04日9over140

我有一个用户列表:

users = [1,2,3,4,5] 

我想计算它们之间的关系:

score = compatibility( user[0], user[1] ) 

如何遍历用户以便用户之间的关系只计算一次?

请您参考如下方法:

如果您只关心有序关系,您可以执行以下操作:

>>> for i, u in enumerate(users[1:]): 
    print(users[i], u)           # or do something else 
 
 
1 2 
2 3 
3 4 
4 5 

如果您需要所有组合,您应该使用 itertools.combinations :

>>> import itertools 
>>> for i in itertools.combinations(users, 2): 
    print(*i) 
 
1 2 
1 3 
1 4 
1 5 
2 3 
2 4 
2 5 
3 4 
3 5 
4 5