[英]Python list does not append correctly (IndexError: list index out of range)
[英]Python: List Index Out of Range / Append List
这是我的列表示例(数据) :地址列表这是列表的片段:
['PO Box 4653, Stockton, California, 95204',
'157 Adams St., Stockton, California, 95204', ...
这是我的问题: List index out of range (1) 'int' object is not iterable (2)
请注意,像for i in a_list:
和for i in range(len(a_list):
等解决方案会生成“错误:列表索引超出范围”
解释:我的地址列表没有空值,我尝试以各种方式附加空的“city_list”,如图所示......似乎没有任何效果。 我不知道我怎么能 append 我的空列表 - 请帮助!
目标:抓取'a_list'并在for循环中拆分每个字符串,抓取城市值(索引1)和append它到一个空列表'city_list'
您可能只想尝试在最纯粹的意义上使用for in
循环。
例如,你可以做
arr = [1, 2, 3, 4]
for x in arr:
print(x)
然后应该打印出来
1
2
3
4
所以在你的情况下,只需for i in a_list
只是为您的问题提供更多背景信息:
数字 1 不起作用,因为您的列表中有一个没有“,”的元素。 仔细检查您的数据
2 号不起作用,因为您尝试在 integer 上进行迭代,这没有意义。 您需要将其设为范围,即range(len(a_list))
如果您不关心索引,请执行以下操作:
for address in a_list:
# do something with address
它更简单、更简洁、更直观。 永远记住KISS:保持简单愚蠢。 通常最简单的解决方案是最好的。
由于您没有向我们提供数据,因此您必须自己解决#1。
这应该有效:
a_list = ['PO Box 4653, Stockton, California, 95204','157 Adams St., Stockton, California']
city_list = []
for i in range(0,len(a_list)):
city_name = a_list[i].split(",")[1].strip()
city_list.append(city_name)
print(city_list)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.