如何在Python中创建一长串数字

时间:2016-05-09 20:00:04

标签: python python-2.7

我的问题是关于我在python中编写的一个简单程序。我喜欢创建一个'注释'文件包括以下列表:"点100,000"至"指向999999"分别放在每一行:

指向100,000

指向100,001

...

点999,999

我写了这段代码:

new = ''
for m in range(100000,999999):
    new = new + 'point ' + str(m) + '\n'
fw = open('list.txt', 'w')
fw.write(new)

它有效,但不幸的是,它需要大约45分钟才能运行。请帮我纠正这段代码。

3 个答案:

答案 0 :(得分:1)

避免不必要的字符串连接,直接写入文件:

with open('list.txt', 'w') as fw:
    for m in range(100000,999999):
        fw.write('point ' + str(m) + '\n')

答案 1 :(得分:1)

使用xrange获得更好的性能。

with open('list.txt', 'w') as fw:
    for m in xrange(100000,999999):
        fw.write('point {}\n'.format(str(m))

答案 2 :(得分:-1)

尝试以下方法:

with open('lists.txt', 'w') as fw:
    for m in range(100000,999999):
        fw.write('point ' + str(m) + '\n')

然后,在将其写入文件之前,不需要将所有内容存储在字符串中。