如何将值移到txt fi中的下一行

2024-03-29 10:48:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个txt文件与浮动空格分隔,我需要保持每行只有4个元素。我试着计算空格。现在我需要将其余的值移到下一行并重新启动。你知道吗

fname = open("file.txt", 'r') 
text = fname.read()
countBlank=0 
for line in text:
    for char in line:
        if char.isspace():
            countBlank += 1
        if countBlank ==4

Tags: 文件textintxt元素forreadif
2条回答

您可以通过转换数据并将其存储在数组中来实现,然后可以将其输出到如下所示的新文件:

import numpy as np

fname = open("file.txt", 'r') 
text = fname.read()

arr = np.array(text.split())
rows = len(arr) // 4
remain = len(arr) % 4
out = np.full((rows+1, 4), None).astype(float)
out[:rows, :] = arr[:-remain]
out[rows, :remain] = arr[len(arr)-remain:]
np.savetxt('file2.txt', out)

试试这个,对我有用。你知道吗

floatlist = fname.read().split(" ")

count = 0
finalstring = ""
for x in floatlist:
    count += 1
    if count == 4:
        finalstring += x + "\n"
    else:
        finalstring += x + " "

输入:

"1 2 3 4 5 6 7 8"

输出:

"1 2 3 4
5 6 7 8"

如何写入文件:(在现有代码的末尾)

fname.close()
fname = open("file.txt", "w")
fname.write(finalstring)
fname.close()

相关问题 更多 >