Python将组写入Coloumns

时间:2017-06-27 05:56:23

标签: python

我设法创建了一个值的文本文件,我需要写入csv或xlsx。无论如何都要将值对写入两列,我的文本文件当前包含数据:

1 2 3 4 5 6 7 8

所以我需要这样写出口:

A B
1 2
3 4
5 6
7 8

我知道如何使用代码中指定的列表执行此操作,但我的文本文件是早期函数的输出,并包含我需要分成两个相关列的数千个值。

目前我被困在

text = r"D:\Python\centers.txt"
csv = r"D:\Python\centers.csv"

    with open(text) as text_file:
        csv.reader(open(text, "rb"), delimiter = ' ')
        for row in text_file:
            out_csv = csv.reader(open(csv, 'wb'))
            out_csv.writerows(text)

将文本文件指定为列表是更好的选择吗?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

这是我的方法:

text = r"D:\Python\centers.txt"
csv = open(r"D:\Python\centers.csv", "w")

with open(text, 'r') as content_file:
    content = content_file.read()

content = content.split(" ")

print("A B", file=csv)

for i in range(0, len(content), 2):
    if (i+1 != len(content)):
        print("%s %s"%(content[i], content[i+1]), file=csv)


csv.close()

我读了整个文本文件,然后将其拆分为' ',这会分别给出每个数字。然后我通过调用print函数并给它写入要写的文件,将A B写入csv文件。之后,我循环了数字,但跳过每一秒索引。如果我不在最后一个号码,我将两个号码都打印到文件中。