请考虑以下代码:
list_example = [1,2,3,4,5,6,7,8,9]
List_of_ball_permutations = []
for i in list_example :
for j in list_example:
if j>i:
List_of_ball_permutations.append([i,j])
这将导致列表形成如下:
[[1, 2],
[1, 3],
[1, 4],
[1, 5],
[1, 6],
[1, 7],
[1, 8],
[1, 9],
[2, 3],
[2, 4],
[2, 5],
[2, 6],
[2, 7],
[2, 8],
[2, 9],
[3, 4],
[3, 5],
[3, 6],
[3, 7],
[3, 8],
[3, 9],
[4, 5],
[4, 6],
[4, 7],
[4, 8],
[4, 9],
[5, 6],
[5, 7],
[5, 8],
[5, 9],
[6, 7],
[6, 8],
[6, 9],
[7, 8],
[7, 9],
[8, 9]]
由此每个数字与列表中的另一个数字配对并且没有重复,即如果[1,2]存在,那么[2,1]也不会创建与两个相同数字的对,例如[1,1]也不会被创建。
但是现在考虑一个对象列表,我希望以与数字类似的方式将每个对象与另一个对象(不是自身,没有重复)配对。出于某种原因,我的代码不允许我这样做,因为它提供了一条消息'>' ' Ball'的实例之间不支持和' Ball'。 (我创建的类名为Ball,它生成了对象)。
非常感谢您解决此问题的任何帮助。