python 元组与特定数字比较

python tuple compare with specific number

我有这段代码

import itertools
 
values = [1, 2, 3, 4]
 
per = itertools.permutations(values, 2)

hyp = 3
 
for val in per:
    print(*val)

输出:

1 2  
1 3  
1 4  
2 1  
2 3  
2 4  
3 1  
3 2  
3 4  
4 1  
4 2  
4 3  

我想将每个元组与 hyp 的值进行比较(例如 3)。如果每个元组的值小于或等于 hyp,它就会保留它,如果不满足条件,它就会丢弃它。 在这种情况下,应删除元组 (4,1),(4,2),(4,3)。

换句话说, 基于 hyp 值,它需要配对。 如果 hyp =2 那么从值列表输出应该是这样的

1 2  
1 3  
1 4  
2 1  
2 3  
2 4  

我不确定我是否清楚地解释了我的问题。如果不清楚,请告诉我。

这样就可以了。您只需要提取每个元组的零索引并将其与 hyp:

import itertools
values = [1, 2, 3, 4]
per = itertools.permutations(values, 2)
hyp = 3
for tup in per:
   if tup[0] <= hyp:
        print(*tup)