我有一个函数,它将字符串的子字符串附加到列表中。当输入字符串很大时
MemoryError exception
被抛出。 1维列表是否有任何长度限制?。如果是,我该如何扩展它?
答案 0 :(得分:3)
是。有效内存。通过添加更多交换,添加更多RAM或迁移到具有更大内存限制的体系结构,为进程提供更多可用内存。
答案 1 :(得分:2)
除了增加内存外,还有其他几种选择。
答案 2 :(得分:0)
您可以将数据写入文件,而不是将其附加到列表中。
答案 3 :(得分:0)
你是否偶然使用32位构建的python?当使用64位地址空间时,假设您有足够的可用交换空间,那么在理论上可以访问所有内存之前,您的进程应该暂停 grinding 。在32位进程中,您只能访问大约3千兆字节的内存;今天的标准并没有那么多。