在日常工作中,我们经常需要将Excel表格转换为Markdown格式,以便在文档、博客或其他支持Markdown的平台上分享。然而,手动操作不仅耗时,还容易导致格式混乱,尤其是在处理复杂表格时5。今天,我将分享一个简单高效的Python脚本,只需几行代码,即可将Excel文件快速转换为Markdown格式,让你从此告别繁琐的手动操作!
一、创建脚本
方便起见,可以将此代码命名为excel_to_markdown.py,并保存于桌面上。
import pandas as pd
from tabulate import tabulate
import os
def csv_to_markdown(input_dir, output_dir): # 参数应为变量名,不是具体路径
"""
批量转换CSV文件为Markdown表格
参数:
- input_dir: CSV文件所在目录(需通过变量传入)
- output_dir: 输出目录(需通过变量传入)
"""
os.makedirs(output_dir, exist_ok=True)
for filename in os.listdir(input_dir):
if filename.endswith(".csv"):
try:
input_path = os.path.join(input_dir, filename)
# 自动检测编码(解决中文乱码问题)
df = pd.read_csv(input_path, encoding_errors='ignore', on_bad_lines='skip')
markdown_table = tabulate(
df,
headers='keys',
tablefmt='pipe',
showindex=False,
stralign="center"
)
base_name = os.path.splitext(filename)[0]
output_path = os.path.join(output_dir, f"{base_name}.md")
with open(output_path, 'w', encoding='utf-8') as f:
f.write(markdown_table)
print(f"转换成功: {filename} -> {base_name}.md")
except Exception as e:
print(f"转换失败 {filename}: {str(e)}")
if __name__ == "__main__":
# 定义路径变量(使用原始字符串避免转义)
input_folder = r" " # <- 你的CSV文件所在目录
output_folder = r" " # <- 输出目录
# 调用函数并传入路径
csv_to_markdown(input_folder, output_folder) # 正确传递参数
二、运行脚本
打开cmd:
三、转换成功
坐享其成……
怎么样?是不是非常方便快捷!