我有一个 csv,其中有很多可以重复的街道。我想创建一个列表,其中只有出现的街道的值,没有任何重复。如果我没有解释自己,这是一个更好的例子:
.csv 内容 -> “street1”、“street2”、“street1”、“street1”、“street3”、“street2”
我要制作的列表->“street1”、“street2”、“street3”
这是我的代码:
def differentStreets():
streets = ["example"]
with open("streetsCSV.csv", mode="r", newline='') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
for row in csv_reader:
if(streets.index(row[8])>=0):
continue
else:
streets.append(row[8])
(row[8] 是找到街道值的列)
如您所见,我使用 .index() 函数来处理列表。我的想法是使用它,如果给定的索引为 0 或更大,则意味着街道已添加到应返回的列表中,因此应继续。如果它没有返回值,则街道名称将添加到我创建的列表中。问题是当我运行程序时,出现错误:“ValueError:'LINCOLN TUNNEL E SOUTH TUBE - NJ - NY'不在列表中”。我一直在寻找 .index() 函数的文档,但我找到的所有资源都没有指定如果我尝试使用列表中未找到的值该怎么做。
我想知道如何使用该功能使其工作,或者是否有另一种方法可以为程序提出解决方案。
谢谢你。