我有一个非常基本的问题,我编写了一个代码来打开一个包含数字1 2 3 4 5 6 7 8 9
的.txt文件,然后将其全部平方并写入其他文件。
现在,我想添加到此代码过程中,该过程将所有这些数字分成几行并重写,如下所示:
1 4 9
16 25 36
49 64 81
我的代码已经:
n=[]
dane = open("num.txt", "r")
for i in dane:
i = i.replace('\n','')
for j in i.split(' '):
j = int(j)
j = j**2
n.append(j)
nowy = open("newnum.txt","w")
nowy.write(str(n))
nowy.close()
最佳答案
您编写的代码对编写部分的要求很好。为此,您需要将最后三行代码更改为
nowy = open("newnum.txt","w")
for i in range(0,len(n),3):
nowy.write("{} {} {}\n".format(n[i],n[i+1],n[i+2]))
nowy.close()
for
循环可以解释为:通过使用
n
函数的第三个参数(称为step),循环遍历一次生成3的列表range
。一次将三个值写到文件中,以换行符终止
更改代码行后的输出符合预期
1 4 9
16 25 36
49 64 81
参考:
format
range
关于python - 按行拆分数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29328070/