【发布时间】:2019-05-12 21:13:59
【问题描述】:
该程序假定获取一个文本文件并将其内容转换为一个列表,其中每个元素都是原始文本文件中的一行。从那里我希望能够查看另一个列表中的某些网站是否包含在一个元素中,如果是,则从列表中删除该元素。我不断收到 ValueError
with open(hosts_temp, 'r+') as file1:
content = file1.read()
x = content.splitlines() #convert contents of file1 in to a list of strings.
for element in x:
for site in websites_list:
if site in element:
x.remove(element)
else:
pass
这是我得到的错误:
ValueError: list.remove(x): x not in list
【问题讨论】:
-
错误信息与您的代码不匹配,它会在迭代时从列表中删除...
-
我想你需要
break找到并删除,但即使这样也行不通。改为使用列表推导重建列表 -
它也可能是重复的情况。如果您的站点在元素中多次出现,并且在 x.xml 中仅出现一次。即使这样,也会提示这个错误。
标签: python list valueerror