我有一个文件我放入一个列表,我想从中取出一些东西,并追加到另一个列表(我没有问题),我遇到的问题是删除第一个列表中的东西。下面是我已经尝试过的,但它只是从原始列表中删除所有其他人。Python的列表中删除附加
list:
bob g1 3110
bob g2 244
bob g3 -433
greg fun112 10595
greg fun113 -1203
greg fun114 -3049.999
greg fun115 3808
greg fun116 320
greg got112 -600
greg got113 5958
greg got114 1249
file1 = open('test','rb').read().splitlines()
file1=sorted(file1)
test_group = ['fun','got']
test= []
for product in file1:
spt = product.split(",")
for line in spt:
if line[:3] in test_group:
x = test.append(product)
y = file1.remove(product)
测试[]列表是好的所有我想在那里的项目去,没有问题,但是当我回顾文件1只拿出的“乐趣”和“有”线
每隔一个为什么这只能拿出所有其他的,我该如何解决?
'追加()'和'remove()方法返回''None',所以存储其值'x'&'y'没有按”没有任何意义。 –
工作很好,请你解释是什么导致了错误,试图从我的许多错误中学习:) –
考虑[这个例子](http://pastebin.com/TsKv1YwC) - 在这里迭代列表中的每个项目看到的是打印然后删除。这意味着,现在列表中的下一个项目将以它的速度进行,并且随着索引计数器递增,它将在下一次迭代中跳过(尝试找出列表中的剩余内容:))。这可能会导致非常讨厌和难以找到错误,所以最好不要这样做(它也在[官方的Python教程]中说过)(http://docs.python.org/tutorial/controlflow.html#for-语句) – mata