Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 索引一个集合,我得到两个集合,而不是一个_Python_Python 3.x_Set_Unions - Fatal编程技术网

Python 索引一个集合,我得到两个集合,而不是一个

Python 索引一个集合,我得到两个集合,而不是一个,python,python-3.x,set,unions,Python,Python 3.x,Set,Unions,我认为下面的代码将以我所表达的方式工作 p1 = [ ({1}, (0,0)), ({2}, (0,0)), ({3},(0,0), ] p2 = [ ({1,2}, (1,0)), ({3}, (0,0)), ] for k in range(len(p1)): m = set() for l in range(len(p2)): if p1[k] != p2[l]: m = m.union(

我认为下面的代码将以我所表达的方式工作

p1 = [
    ({1}, (0,0)),
    ({2}, (0,0)),
    ({3},(0,0),
]
p2 = [
    ({1,2}, (1,0)),
    ({3}, (0,0)),
]
for k in range(len(p1)):
    m = set()
    for l in range(len(p2)):
        if p1[k] != p2[l]:
           m = m.union(
               set([min(p1[k][0])]))
    print(m)
我应该得到的是
{1,2}
,但是我得到了

Set([1])
Set([2])
我还收到一条错误消息,上面说:

'set' object does not support indexing
我不知道我是否应该使用其他命令


我真的很感激能得到的任何帮助。我已经考虑了一段时间,但无法解决此问题。

不清楚您试图做什么,但仅仅解决错误并不会返回预期的输出。使用
itertools.product()
而不是嵌套for循环:

p1=[({1}, (0,0)), ({2}, (0,0)), ({3}, (0,0))]
#                                  ^^^^ a tuple now
p2=[({1,2}, (1,0)), ({3}, (0,0))]

In []
import itertools as it

m = set()
for k, l in it.product(p1, p2):
    if k != l:
        m.add(min(k[0]))
print(m)

Out[]:
{1, 2, 3}
做一个大的假设,但是如果你想同时浏览这两个列表,你会使用
zip(p1,p2)
,例如:

In []:
m = set()
for k, l in zip(p1, p2):
    if k != l:
        m.add(min(k[0]))
print(m)

Out []:
{1, 2}

m=set()
print(m)
移动到for循环之外。这不会解决
set
不支持索引的事实。不清楚您希望如何合并集合,请提供一个简短的解释。正确,集合不支持索引的问题是因为
p1
-
({3})中的最后一个条目不是元组,因此
p1[2][0]
将抛出错误。大概这应该是一个元组,例如,
({3},)
,它可以修复错误。哦,对不起,我没有注意到我在那里做了更改,但是是的,这就是为什么我在代码中找不到错误的原因。。抱歉,您的元组更正缺少结束参数