如何根据现有列表的值创建新列表?

问题描述:

我是python的新手。如何根据现有列表的值创建新列表?

比方说,我有一个这样的名单:

randomList = [2, 3, 5, 7, 11] 

如何筛选上面所列内容的值,使得新的结果列表根据下述条件的取值。

例如:

可以说,我想创建randomList这样n%2 != 0所有的数字n * 2的新列表。因此,新的名单应该是这个样子:

newList = [6, 10, 14, 22] 

我可以通过使用for循环使用append命令做到这一点,但有一个更好的方式来这蟒蛇?

p.s - 我是初学者。

+1

答案是列表内涵。请搜索列表解析。 –

你可以这样做,在一个简单的线条。

randomList = [2, 3, 5, 7, 11] 

newList = [n*2 for n in randomList if n%2 != 10] 

就是这样。现在

newList值将是:

newList = [6, 10, 14, 22] 

你在找什么是List Comprehensions

>>> [ n*2 for n in randomList if n % 2] 
[6, 10, 14, 22] 

使用list comprehension

newlist = [2*i for i in randomList if i % 2 != 0]