Python自动化Markdown无序列表
应用场景
假如我们在编辑Markdown格式的文档,需要显示一个很大的列表,但目前只有每行的文本,那么需要在每一行的前面添加“* ” ,这样在Markdown的文档就可以形成无序列表了。
Markdown语法1
2* 哈哈
* 哈哈
效果:
- 选中246行长诗,右击复制
- 运行本程序
- 在你需要插入的地方右击粘贴,Bingo
我们看看Python的pyperclip模块是怎样实现的
pyperclip模块不是内置模块需要自己安装
pip3 install pyperclip
- pyperclip.paste()
从电脑剪贴板中获取复制的内容 - pyperclip.copy(text)
把text内容放到电脑的剪贴板,那么粘贴时的数据就变成text的内容了那么,我们来实现一下自动化在每行前面添加“* ”
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25#!/usr/bin/env python3
# coding=utf-8
__author__ = "RidingRoad"
import pyperclip
def main():
"""运行前把需要形成无序列表的数据选中右击复制
运行后右击粘贴即可生成Mark down格式无序列表
"""
# 获取剪贴板的数据
text = pyperclip.paste()
# 对长字符串根据"\n"进行分割到一个列表
text_split = text.split('\n')
# 在每一行前添加"* "(*号和一个空格)
for i in range(len(text_split)):
text_split[i] = "* " + text_split[i]
# 合并
text = "\n".join(text_split)
# 把处理后的数据放回剪贴板
pyperclip.copy(text)
if __name__ == "__main__":
main()
运行后剪贴板内容:
1 | * 踯躅在半路里, |