代码遇到了小问题,重复的怎么扣。在线求解

img


重复的要怎么扣
这是我的代
sum = 0
for i in range (1,7+1):
for j in range(1,7+1):

    print(i," ", j)
    sum += 1

print("The totalnumber of all combination is",sum/2)

1,2 输出后就不能输出2,1?
那j 就从 i 开始往上加 第二个for j in range(i,7+1)

sum = 0
for i in range(1, 7+1):
    for j in range(i+1, 7+1):
        print(i, " ", j)
        sum += 1
print("The totalnumber of all combination is", sum)

for j in range(i+1,7+1)
让j永远比i大就行了


sum = 0
for i in range (1,7+1):
    for j in range(i+1,7+1):
        print(i," ", j)
        sum += 1
print("The totalnumber of all combination is",sum)

借助于itertools中的combinations函数解较为容易:

from itertools import combinations
c=list(combinations(range(1,8), 2))
for x in c:
    print(x)
print(len(c))