将记事本数据转换为Excel

e0bqpujr  于 2023-11-20  发布在  其他
关注(0)|答案(1)|浏览(333)

我的记事本里有一些数据,看起来像这样:
node1
7
p 2
R 5
node2
6
p 2
R 4
我想使用Python将这些数据转换为Excel文件,以便创建一个Excel,其中行为node1和node2,列为:total,primary和replicas,即p表示主,r表示副本,数字指向称为“total”的列。因此,基本上在Excel中,它应该如下所示:


的数据

g0czyy6m

g0czyy6m1#

将数据传输到Excel的最简单方法是使用CSV file
其主要思想是按顺序读取四行,然后将它们组成一行,并将该行写入CSV文件“data.csv”。
您的数据将如下所示

  1. node1;7;2;5
  2. node2;6;2;4

字符串
接下来,您应该在Excel中打开“data.csv”。
一些解释:
1.我想在你的文本文件中没有空行。
1.首先,你应该从新的行符号中清除一个文本。它是由rstrip()方法生成的。
1.需要从'p'和'r'中清除带有'p'和'r'的数据。它通过.rsplit()[-1]按空格分割并获取列表的最后一个元素。

  1. import csv
  2. with open("data.txt", "rt") as data, open("data.csv", "w", newline='') as csvfile:
  3. for line in data:
  4. row = [line.rstrip()] # node name
  5. row.append(data.readline().rstrip()) # total
  6. row.append(data.readline().rstrip().rsplit()[-1]) # primary
  7. row.append(data.readline().rstrip().rsplit()[-1]) # replicas
  8. csv_data = csv.writer(csvfile, delimiter=";", quoting=csv.QUOTE_MINIMAL)
  9. csv_data.writerow(row)
  10. else:
  11. print("Done!")


这是可能的写入数据到XLSX文件,但它的一些困难。

展开查看全部

相关问题