如何使用包含两个元素的每个元组创建一组元组?每个元组都有x
和y
值:(x,y)
我的号码是1到50,并希望将x
分配给所有值1到50以及y
也分配给1到50.
S = {(1,1),(1,2),(1,3),(1,4)...(1,50),(2,1)......(50,50)}
我试过
positive = set(tuple(x,y) for x in range(1,51) for y in range(1,51))
但是错误消息表明元组只接受一个参数。如何设置元组列表需要做什么?
答案 0 :(得分:13)
mySet = set(itertools.product(range(1,51), repeat=2))
OR
mySet = set((x,y) for x in range(1,51) for y in range(1,51))
答案 1 :(得分:3)
tuple
只接受一个参数。只需使用括号明确写入元组。
# vvvvv
>>> positive = set((x,y) for x in range(1,5) for y in range(1,5))
>>> positive
{(1, 2), (3, 2), (1, 3), (3, 3), (4, 1), (3, 1), (4, 4), (2, 1), (2, 4), (2, 3), (1, 4), (4, 3), (2, 2), (4, 2), (3, 4), (1, 1)}