Python创建文件并添加数字
我正在尝试编写一个程序来创建文件,其中一个文件应如下所示:Python创建文件并添加数字,python,for-loop,file-io,Python,For Loop,File Io,我正在尝试编写一个程序来创建文件,其中一个文件应如下所示: for x in range(1,20): f = open("test"+str(x), 'w') f.write(str(x) + "\n" + str(20-x)) f.close() 一, 十九, 下一个文件 二, 十八 三, 十七, 等等 所以直到19在第一行,1在第二行,我基本上是将第一行从1增加到19,第二行从19减少到1。我有这个代码,它创建了这个文件,并写了第一个数字,但不是最后一个,有什么建议吗
for x in range(1,20):
f = open("test"+str(x), 'w')
f.write(str(x) + "\n" + str(20-x))
f.close()
一,
十九,
下一个文件
二,
十八
三,
十七,
等等
所以直到19在第一行,1在第二行,我基本上是将第一行从1增加到19,第二行从19减少到1。我有这个代码,它创建了这个文件,并写了第一个数字,但不是最后一个,有什么建议吗
for x in range(1,19):
file = open("test%x"%x, 'w')
file.write('%x'%x)
for x in range(19,1):
file = open("test%x"%x, 'a')
file.write('%x'%x)
file.close()
您可以尝试以下方法:
for x in range(1,20):
f = open("test"+str(x), 'w')
f.write(str(x) + "\n" + str(20-x))
f.close()
您正在使用两个具有相同fileObject名称的文件,但从未关闭第一个文件。这是个问题。为什么要重新打开它?如果您想创建19个文件,只需编写所需内容,关闭它,然后继续 其次,记住range()函数中的第二个参数是上限。这是一个价值范围将增长,以满足,但从来没有真正实现。所以如果你想要1-19,你的射程应该是1-20
num = 19
for x in range(1,20):
filename = "test%d.txt" % (x)
writeFile = open(filename, 'w')
writeFile.write("%d" % (num))
writeFile.close()
num -= 1
像这样的方法应该会奏效:
num = 19
for x in range(1, num+1):
with open file(''.join(['file_',
str(x),
'.txt'], 'w') as the_file:
file.write(''.join([str(x),
'\n',
str(num-x+1)])