如何在Python中创建一个长长的数字列表
我的问题是关于我用python编写的一个简单程序。我想创建一个“注释”文件,其中包含一个列表,从“点100000”到“点999999”,分别放在每行中: 100000分 第100001点 第999999点 我写了这段代码:如何在Python中创建一个长长的数字列表,python,python-2.7,Python,Python 2.7,我的问题是关于我用python编写的一个简单程序。我想创建一个“注释”文件,其中包含一个列表,从“点100000”到“点999999”,分别放在每行中: 100000分 第100001点 第999999点 我写了这段代码: new = '' for m in range(100000,999999): new = new + 'point ' + str(m) + '\n' fw = open('list.txt', 'w') fw.write(new) 它可以工作,但不幸的是,运行
new = ''
for m in range(100000,999999):
new = new + 'point ' + str(m) + '\n'
fw = open('list.txt', 'w')
fw.write(new)
它可以工作,但不幸的是,运行大约需要45分钟。请帮助我更正此代码。避免不必要的字符串连接,而是直接写入文件:
with open('list.txt', 'w') as fw:
for m in range(100000,999999):
fw.write('point ' + str(m) + '\n')
请尝试以下操作:
with open('lists.txt', 'w') as fw:
for m in range(100000,999999):
fw.write('point ' + str(m) + '\n')
然后,在将内容写入文件之前,不需要将所有内容存储在字符串中。使用xrange可获得更好的性能
with open('list.txt', 'w') as fw:
for m in xrange(100000,999999):
fw.write('point {}\n'.format(str(m))
为什么要投否决票?是不是因为提交答案太晚了一分钟?谢谢大家的回答。当然,我应该在问题中写上:“999998点”而不是“9999999点”。