Skip to main content
 首页 » 编程设计

python之如何从现有列表列表中创建第一个元素的新列表

2025年05月04日10zengkefu

我在下面有一个列表。我需要用它来创建一个只有国家名称的新列表。 如何循环 x 以获得国家/地区名称列表?

x = [["UK", "LONDON", "EUROPE"], 
     ["US", "WASHINGTON", "AMERICA"], 
     ["EG", "CAIRO", "AFRICA"], 
     ["JP", "TOKYO", "ASIA"]] 

结果应该是这样的

UK 
US 
EG 
JP 

请您参考如下方法:

你有两种方法

使用for循环

countries = [] 
 
for e in x: 
 countries.append(e[0]) 

或者使用列表理解,这在大多数情况下是更好的选择

countries = [e[0] for e in x] 

此外,如果您的数据源是一个生成器(在本例中不是),或者如果您对每个元素进行一些昂贵的处理(在本例中也不是),您可以使用 generator expression 通过改变方括号 [] 为圆括号 ()

countries = (e[0] for e in x) 

这将按需计算元素,如果数据源太长或与列表理解相比,生成器也将减少内存占用。