我有一个邮政编码的列表,我只想返回它的第一部分
postcodes = list(df['postcode'][0:10])
['EC4V 3EJ', 'SE1 9DW', 'W12 7EY', 'E14 9GA', 'E17 8ES', 'N10 3LR', 'W2 2RH', 'W3 7ST', 'W2 1PW', 'W4 5RG']
for p in postcodes:
postcodes.append(p.split()[0])
postcodes
我希望得到这样的东西:
['EC4V', 'SE1', 'W12', 'E14' ...]
但是我的内核一直在循环,它不返回任何东西
您在一个列表上循环,并在每次迭代中附加到它。你的循环永远不会停止(你循环的每个成员,你都会在列表中添加另一个元素)。您应该使用列表理解您想要的输出:
您的问题是,在循环浏览邮政编码时附加到
postcodes
。所以你不可能在postcodes
中循环所有的东西,因为你一直在为每个循环添加内容。相反,您可以创建一个新的空列表,例如modified_postcodes
,您可以将每个修改后的邮政编码附加到该列表中:或者,您可以使用pythons
map
方法通过使用.split()
将postcodes
中的每个邮政编码映射到其第一段:相关问题 更多 >
编程相关推荐