如何在Python中解决MemoryError问题?
通常不会遇到这个问题。python解决小问题不会有memoryerror可能是使用了大对象也可能是使用了递归。没有合适规划临时或者是堆栈数据的数量。那么有问题大部分是因为dict或者是list太大了。
解决办法是使用优化过的数据结构,比如blist,或者是直接使用numpy的数组,array数据结构等等。解决办法多。还可以使用64位版本。其实意义不大。python自己不需要管理大内存。也不需要大内存操作。所以要用分布式架构解决问题。把问题分解成500MB以下的小问题,这样即使是32位的python也可以轻松完成。
内存管理的事情还是交给C,C++这样的程序比较合适。2GB以下可以使用共享内存。如果超过了,比如8,16,96gb等。可以考虑使用数据库去管理。
如果你一定要用大对象也没有关系,其实效率也是挺高的。只是算法要优化。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有