Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.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中,如何将一个包含5个元素的集合转换为每个包含一个元素的5个集合?_Python_Python 2.7_List - Fatal编程技术网

在python中,如何将一个包含5个元素的集合转换为每个包含一个元素的5个集合?

在python中,如何将一个包含5个元素的集合转换为每个包含一个元素的5个集合?,python,python-2.7,list,Python,Python 2.7,List,假设我有两组列表 set1 = [2, 4, 6, 8, 10] set2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 从这里,我试图从set2中减去set1,以得到[1,3,5,7,9],我这样做是通过说print[x代表set2中的x,如果x不在set1中]输出就是set2,因为在set 2中只有一个元素,这是所有自然数的列表,包括10 所以我的问题是如何将[1,2,3,4,5,6,7,8,9,10]转换成[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8

假设我有两组列表

set1 = [2, 4, 6, 8, 10]
set2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
从这里,我试图从set2中减去set1,以得到
[1,3,5,7,9]
,我这样做是通过说print
[x代表set2中的x,如果x不在set1中]
输出就是
set2
,因为在set 2中只有一个元素,这是所有自然数的列表,包括10

所以我的问题是如何将
[1,2,3,4,5,6,7,8,9,10]
转换成
[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]

我知道这是一个基本问题,但我是新来的,我找不到其他类似的问题。请回答有助于一般情况的问题,而不仅仅是在这种情况下。提前感谢。

您可以尝试以下方法:

s = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
new_s = [[i] for i in s]
输出:

[[1], [2], [3], [4], [5], [6], [7], [8], [9], [10]]

您可以使用集合来解决所述问题

set1 = [2, 4, 6, 8, 10]
set2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

set(set2) - set(set1)

Out[18]: {1, 3, 5, 7, 9}  
列表理解也有效,你有不同的结果吗

[e for e in set2 if e not in set1]

Out[17]: [1, 3, 5, 7, 9]

那不是一个集合,那是一个列表…
[[x]代表数据中的x]
。为什么说
集合2中只有一个元素?你用
set2=[1,2,3,4,5,6,7,8,9,10]
定义了
set2
。你的故事没有多大意义:在
set2
中有10个元素。你为什么认为获取列表将帮助你解决更大的问题,这一点都不清楚。如果您的原始列表与您在第一个代码块中显示的相同,那么您在下一段中显示的列表理解应该可以正常工作。得到一份清单是没有帮助的,事实上,它会使你真正想要的更难实现。你的
set2
真的是
[[1,2,3,4,5,6,7,8,9,10]