大概代码如下,其中主列表 full_queue 有 5000 个元素,做差集的列表有 50 个左右,计算下来耗时大概 100 多 ms ,有什么方法或者第三方包可以优化这部分的执行时间?
from datetime import datetime
process_start = datetime.now().timestamp()
full_queue = [4878214304830001, 4878214304830002, 4878214304830003, 4878214304830004, ...]
diff_queue = [4878214548209665, 4878214308487169, 4878265720848385, ...]
format_list = list(set(full_queue)-set(diff_queue))
format_list.sort(key=full_queue.index)
print(format_list[:5])
process_elapsed = round(datetime.now().timestamp() - process_start, 4) * 1000
print(process_elapsed)
1
Phishion OP 行了,当我没问,我用列表解析遍历只要个位数 ms ,不知道为什么列表解析快那么多
|