如何在Python中解决MemoryError问题

2025-04-08 02:09:23
推荐回答(2个)
回答1:

通常不会遇到这个问题。python解决小问题不会有memory error

可能是使用了大对象也可能是使用了递归。没有合适规划临时或者是堆栈数据的数量。

那么有问题大部分是因为dict或者是list太大了。解决办法是使用优化过的数据结构,比如blist,或者是直接使用numpy的数组,array数据结构等等。

解决办法多。还可以使用64位版本。其实意义不大。python自己不需要管理大内存。也不需要大内存操作。

所以要用分布式架构解决问题。把问题分解成500MB以下的小问题,这样即使是32位的python也可以轻松完成。

内存管理的事情还是交给 C, C++这样的程序比较合适。2GB以下可以使用共享内存。 如果超过了,比如8,16, 96gb等。可以考虑使用数据库去管理。

如果你一定要用大对象也没有关系,其实效率也是挺高的。只是算法要优化。

回答2:

应该除了加内存没办法了