use*_*897 0 python memory list
有人质疑Python中的内存错误,但我想问一下我的具体情况.我是编程和Python的新手.
在解析大文本文件(~8GB)时,该行
mylist = [line.strip('\n').split('|') for line in f]
Run Code Online (Sandbox Code Playgroud)
导致"MemoryError".
我在Windows XP 64位上运行64位Python [MSC v.1500 64位(AMD64)],内存为12GB.除了安装更多内存以外,如何处理此内存错误?
内存错误即将发生,因为您试图将整个文件存储在列表中(在内存中).因此,尝试在每一行上工作而不是存储它:
for line in f:
data = line.strip('\n').split('|')
#do something here with data
Run Code Online (Sandbox Code Playgroud)