Python番外篇:写个Excel表格转Markdown表格的小程序

544 阅读1分钟

本人已参与【新人创作礼】活动,一起开启掘金创作之路。 本文首发于CSDN

hello,大家好,我是wangzirui32,今天来教大家如何写一个Excel表格转Markdown表格的小程序,开始学习吧!

1. 第三方库准备

首先,安装pandas:

pip install pandas

再安装openpyxl:

pip install openpyxl

没有报错即安装成功。

2. 示例文件

这里我准备了data.xlsx文件,如图:
Excel表格
对应的Markdown表格如下:

姓名年龄性别入职日期
小明302021-01-17 00:00:00
小红272021-02-08 00:00:00
小刚352020-10-16 00:00:00

Markdown表格的编写如下:

姓名|年龄|性别|入职日期
-|-|-|-|
小明|30|男|2021-01-17  00:00:00
小红|27|女|2021-02-08  00:00:00
小刚|35|男|2020-10-16  00:00:00

3. 编写代码

import pandas as pd

# 数据文件
excel_file = "data.xlsx"

excel = pd.read_excel(excel_file)              # 读取Excel表格

excel_table_head = list(excel.columns.values)  # 读取表头
table_head = '|'.join(excel_table_head) + "\n" # 拼接表头

# 获取表格主体
excel_table_body = list(excel.iloc[0:].values)

new_table_body = []

# 将每一个列表项转换为字符串
for i in excel_table_body:
    row = []
    for j in i:             # 对这一行的遍历
        row.append(str(j))  # 转换为字符串并加入row列表
    
    new_table_body.append(row)  # 再将row加入new_table_body

# 拼接列表主体
table_body = '\n'.join(['|'.join(i) for i in new_table_body])

# 制作列表分隔符
table_split = '-|' * len(excel_table_head) + "\n"

# 拼接成table变量
table = table_head + table_split + table_body

# 输出到文件
with open("output.txt", "w", encoding="UTF-8") as f:
    f.write(table)

运行代码,在目录下可以看到输出的output.txt文件。


好了,今天的课程就到这里,我是wangzirui32,我们下次再见!