我有一个清单:
numbers = [12, 23, 26, 54]
我需要知道每对数字是否至少有一个共同的数字。例如12
有数字1
和2
,所以应该包括对(12,23),因为它们都有数字2
。我想把成双的单子寄回来。例如
>>> numbers = [12, 23, 26, 54]
>>> function(numbers)
[(12, 23), (12, 26), (23, 12), (23, 26), (26, 12), (26, 23)]
这是我目前的密码
pari_his=([12, 23, 26, 54])
par=set()
parus=[]
b=list()
c=list()
resitev=list()
for i in pari_his:
i=str(i)
for e,j in enumerate(i):
if e%2==0:
b.append(j)
else:
c.append(j)
print(b,c)
for ena, dva in zip(b, c):
kuku=(ena,dva)
parus.append(tuple(kuku))
print(parus)
for juj in parus:
print(juj[0],juj[1])
使用
itertools.product
获取元组(必须过滤两次相同的数字),然后使用数字的set
交集查看它们是否有任何共同的数字。你知道吗如果没有
itertools
,您可以自己构建元组。你知道吗相关问题 更多 >
编程相关推荐