我有一个名为testfile.txt的文本文件:
25/03/2018 00:00:00
我编写了一个python脚本来删除文件中的所有cat字:
admin>cat testfile.txt
cat
cat
dog
rat
pig
cat
脚本输出如下:
admin$ cat test.py
f1=open("testfile.txt","r")
f=f1.readlines()
print(f)
print (type(f))
print(len(f))
for x in f:
if x=="cat\n":
f.remove(x)
print(f)
print (f)
print(len(f))
f1.close()
问题是为什么还剩下一只“猫”。在for循环的第二次迭代中,它应该删除文件中的第二个“cat”但是它没有删除它?
连续两只猫[第1行,第2行]存在一些问题。
Python版本:admin$ python test.py
['cat\n', 'cat\n', 'dog\n', 'rat\n', 'pig\n', 'cat\n']
<type 'list'>
6
['cat\n', 'dog\n', 'rat\n', 'pig\n', 'cat\n']
['dog\n', 'rat\n', 'pig\n', 'cat\n']
['dog\n', 'rat\n', 'pig\n', 'cat\n']
4