Markdown 是一种轻量级标记语言,用纯文本编写格式化文档。它通过简洁的符号定义标题、列表、表格等结构,易于阅读和编辑,同时能渲染成 HTML、PDF 或幻灯片。在技术文档、博客、GitHub README 以及笔记管理中,Markdown 几乎是标配。
Markdown 格式基础
.md 或 .markdown 是常见的文件扩展名。它的核心优势在于纯文本属性——任何编辑器都能打开,即使不渲染也能看懂结构。使用 # 表示标题,* 或 - 表示列表,支持跨平台兼容 Git 和各类文档工具。
下面是一个包含表格和引用的示例:
# 学生成绩表
| ID | Name | Score |
|----|-------|-------|
| 1 | Alice | 95 |
| 2 | Bob | 88 |
| 3 | Carol | 90 |
- 高分学生:成绩 >= 90
- 平均分:91.0
> 注:Markdown 文件支持引用、列表及代码块。
在 Python 中操作 Markdown
内存中的临时处理
有时候我们不需要立刻写入磁盘,而是想在内存里处理 Markdown 内容,比如测试或处理网络请求。这时可以用 io.StringIO 模拟文件对象。
from io import StringIO
md_text = """
# 学生成绩表
| ID | Name | Score |
|----|-------|-------|
| 1 | Alice | 95 |
| 2 | Bob | 88 |
| 3 | Carol | 90 |
"""
buf = StringIO(md_text)
print(buf.read())
这种方式适合快速验证内容,避免频繁读写磁盘。
数据结构准备
生成 Markdown 前,通常先在内存里准备好数据。用列表或字典存储信息最方便程序化生成表格:
students = [
{"id": 1, "name": "Alice", "score": 95},
{"id": 2, "name": "Bob", "score": 88},
{"id": 3, "name": "Carol", "score": 90},
]
使用 Python 标准库生成 Markdown
虽然 Python 没有内置的 Markdown 模块,但字符串拼接足够应付大部分场景。
生成表格
手动拼接表格行时要注意对齐,不过现代 Markdown 渲染器对空格容忍度较高。这里演示如何从字典列表生成表格并保存:

