如何将5个元素中的一个变为5个元素,每个元素都包含python中的一个元素?

问题描述:

可以说我有2套列表。如何将5个元素中的一个变为5个元素,每个元素都包含python中的一个元素?

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

在这里,我一直在努力,从SET2为了得到[1, 3, 5, 7, 9]减去设置1,和我说的打印[x for x in set2 if x not in set1]输出只是set2这样做,因为在第2组只有一个元素是,这是所有自然数最多和包括10的列表。

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

我知道这是一个基本的问题,但我是新的,我找不到任何像这样的其他问题。请回答一般的帮助,而不仅仅是在这种情况下。提前致谢。

+0

这不是一个集合,这是一个列表...... –

+1

'[[x] for data in data]'。 –

+1

你为什么说'set2'中只有一个元素?你用'set2 = [1,2,3,4,5,6,7,8,9,10]'定义了'set2'。 – Matthias

你可以用套来解决所陈述的问题

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] 

你可以试试这个:

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]]