我有一個大列表,我希望過濾。我想通過對列表中的每個元素執行一些操作來完成此操作,然後刪除列表中的任何其他匹配元素。期望的輸出是較短的ls
,刪除了匹配的後期操作元素。我可以做到這一點,但它真的很慢。 你有什麼建議可以加快速度嗎?Python:按列表元素操作過濾大列表
一個例子列表如下所示:
ls = [1,2,3,......,10000000]
和操作是這樣的:
def performOps(x):
a = x**2
b = x**5
c = x**7
return a,b,c
for elem in ls:
res = performOps(elem)
for i in res:
if i in ls[ls.index(elem)+1:]:
ls.remove(elem)
你的代碼不起作用 - 它給了我'ValueError: 2在'ls.index(elem)'調用中不在列表中。 –