有人知道这个怎么有优化吗?
python的.replace替换语句,大概有5000个左右,用来替换文本,运行速度有点慢,而且特别占内存,有什么解决方法吗
replace是从头开始查找的且会返回一个新的字符串,你这5000个迭代,如果源字符串很长的话,内存和时间确实都会爆炸
但你这时间复杂度已经摆在这里了,同时我也想不到现成可以使用的库,只能提供几个建议,可以先把拷贝给优化掉,然后替换字符串没冲突的话,考虑从头到尾只遍历一次,类似于在线处理算法
极端一点你这可以用MapReduce处理,文本分成一小段一小段的,然后可以并行处理,最后再连起来就是你要的,如果有10台机器同时干的话能调高许多倍的效率,当然你可以是少一点的物理机再配合多进程
不过要是能忍的话忍忍也还行,毕竟算法不是那么好写