我的记事本里有一些数据,看起来像这样:node17p 2R 5node26p 2R 4我想使用Python将这些数据转换为Excel文件,以便创建一个Excel,其中行为node1和node2,列为:total,primary和replicas,即p表示主,r表示副本,数字指向称为“total”的列。因此,基本上在Excel中,它应该如下所示:
的数据
g0czyy6m1#
将数据传输到Excel的最简单方法是使用CSV file。其主要思想是按顺序读取四行,然后将它们组成一行,并将该行写入CSV文件“data.csv”。您的数据将如下所示
node1;7;2;5node2;6;2;4
node1;7;2;5
node2;6;2;4
字符串接下来,您应该在Excel中打开“data.csv”。一些解释:1.我想在你的文本文件中没有空行。1.首先,你应该从新的行符号中清除一个文本。它是由rstrip()方法生成的。1.需要从'p'和'r'中清除带有'p'和'r'的数据。它通过.rsplit()[-1]按空格分割并获取列表的最后一个元素。
import csvwith open("data.txt", "rt") as data, open("data.csv", "w", newline='') as csvfile: for line in data: row = [line.rstrip()] # node name row.append(data.readline().rstrip()) # total row.append(data.readline().rstrip().rsplit()[-1]) # primary row.append(data.readline().rstrip().rsplit()[-1]) # replicas csv_data = csv.writer(csvfile, delimiter=";", quoting=csv.QUOTE_MINIMAL) csv_data.writerow(row) else: print("Done!")
import csv
with open("data.txt", "rt") as data, open("data.csv", "w", newline='') as csvfile:
for line in data:
row = [line.rstrip()] # node name
row.append(data.readline().rstrip()) # total
row.append(data.readline().rstrip().rsplit()[-1]) # primary
row.append(data.readline().rstrip().rsplit()[-1]) # replicas
csv_data = csv.writer(csvfile, delimiter=";", quoting=csv.QUOTE_MINIMAL)
csv_data.writerow(row)
else:
print("Done!")
型这是可能的写入数据到XLSX文件,但它的一些困难。
1条答案
按热度按时间g0czyy6m1#
将数据传输到Excel的最简单方法是使用CSV file。
其主要思想是按顺序读取四行,然后将它们组成一行,并将该行写入CSV文件“data.csv”。
您的数据将如下所示
字符串
接下来,您应该在Excel中打开“data.csv”。
一些解释:
1.我想在你的文本文件中没有空行。
1.首先,你应该从新的行符号中清除一个文本。它是由rstrip()方法生成的。
1.需要从'p'和'r'中清除带有'p'和'r'的数据。它通过.rsplit()[-1]按空格分割并获取列表的最后一个元素。
型
这是可能的写入数据到XLSX文件,但它的一些困难。