所以基本上我试图检查名为list9000的列表中的一串字符串是否包含" @"标志。我想要的是在列表有6个元素后清空列表,但在清除它之前执行for循环检查任何" @"的元素。迹象。我尝试过使用del和其他清空技术,但它似乎并没有起作用。到目前为止,这是我的工作:
if( len(list9000) == 6):
# print(list9000)
i = list9000.count("@")
if(i>1):
amount9000 = amount9000 - i + 1
numWrong = numWrong - i + 1
list9000[:] = []
list9000.append(line)
这只是我代码的一小部分。大约有300行其他代码。我正在读一个文本文件,在其中我将文件中的文本行添加到我的列表中。如果我能解决这个问题,我基本上就完成了我的项目!
编辑:我尝试过使用del list9000 [:],但它没有用。
**更新:**我已经打印出列表的长度,它在大多数情况下似乎不是6,而是每次增加6。
答案 0 :(得分:0)
您可以将list9000重新分配给新的空列表对象。但要小心,如果要分配可变对象,Python会创建引用。一个简单的list9000[:] = []
应该可以清除你的清单。
if( len(list9000) == 6):
# print(list9000)
i = 0
for item in list9000:
if("@" in item):
i += i + 1
if(i>1):
amount9000 = amount9000 - i + 1
numWrong = numWrong - i + 1
list9000[:] = []