编辑大型Python文件会占用系统资源

时间:2015-09-24 20:22:21

标签: python editor

我正在创建一个包含2,000个字符串条目的列表变量的文件。

请注意我在谈论运行代码时并没有谈论,但正当我打字创建文件时,我的计算机开始占用大量内存。一旦我删除第6行中的所有单词就会清除。

我在IDLE编辑。 列表在这里:http://pastebin.com/uwpKriZ3

FYI

以下是缩写示例代码:

import random

# The following line is unwrapped and, in the actual script,
# contains 26431 characters comprising 2000 words:
list1 = ['aback', 'abaft', 'abandoned', 'abashed', 'aberrant', 'abhorrent', 'abiding']

rndword = random.choice(list1)
brokenword = list(rndword)

1 个答案:

答案 0 :(得分:1)

该变量赋值行长度为26431个字符,甚至可以使emacs运行缓慢。尝试执行查找/替换,用逗号替换每个逗号后跟换行符。

大多数情况下,在编写实际程序时,如果需要加载大量数据,可以从文件中读取数据。要在python中执行此操作:

#!/usr/bin/env python
import random
import io

list1 = [line.strip() for line in io.open('data.txt', 'r', encoding="utf-8-sig")]

rndword = random.choice(list1)
brokenword = list(rndword)
print(brokenword)

从外部源读取数据可识别数据和代码是不同的东西。它还鼓励代码可重用性/泛化。例如,您可能会想出一个可以应用于不同数据集的有用算法。为什么你可以将数据集放到源代码中,而不是需要修改它可以提供不同的数据?只需保持代码和数据分开,突然间,您就拥有了更清晰,更可重用的代码。