我用 python 写了一个自动生成索引的脚本
简介:为了刷算法题记录自己的刷题轨迹,并总结一下方法、心得。想到一个需求:能不能在我每新增一条题目的笔记后,利用程序自动地将其归类、创建索引?用 Python 实现一个入门级的小脚本,涉及到 文件读写、命令行参数、数组操作应用等知识点
,在此分享给朋友们。
需求实现
我有一个 Markdown 文档,长成下面这个样子:
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
# ACM/OI Journey 在此留下刷题痕迹与刷题心得。 不定期的方法论总结在这里[./notes/README.md](./notes/README.md)。 学习资料: - OI Wiki: https://oi-wiki.org/ - 力扣中国: https://leetcode-cn.com/ ## 归档 ## 日期归档
注意到,两个二级标题 ## 归档
与 ## 日期归档
下空空如也。
我的需求是,我刷完一道题,就将其记录在 ## 日期归档
下,格式为: - uu 日期 题目名称与概括 类别A 类别B 类别C... [程序文件1] [程序文件2] [程序文件3]...
假设我今天刷了 2 道题,那么我就将其记录在我的 ## 日期归档
下面,如下所示。
## 日期归档 - uu 2020.11.26 盛最多水的容器『因为两个边共同决定了上限,因此将较短边向内移动,抛弃搜索次优解』 双指针法 搜索 [py](./vsc_leetcode/11.盛最多水的容器.py) [cpp](./vsc_leetcode/11.盛最多水的容器.cpp) - uu 2020.11.27 整数转罗马数字『生活中从大的位数开始描述数字,因此从大的数与字符开始匹配』 匹配 字符串 [cpp](./vsc_leetcode/12.整数转罗马数字.cpp)
而我的 ## 归档
下面还什么都没有,我希望我的脚本可以自动帮我在 ## 归档
下创建三级目录: 双指针法
、 搜索
、 匹配
、 字符串
,并且将对应的题目放到下面去。
最终的效果是:
## 归档 - [匹配](#匹配) - [字符串](#字符串) - [双指针法](#双指针法) - [搜索](#搜索) ### 匹配 - 整数转罗马数字『生活中从大的位数开始描述数字,因此从大的数与字符开始匹配』 [cpp](./vsc_leetcode/12.整数转罗马数字.cpp) 2020.11.27 ### 字符串 - 整数转罗马数字『生活中从大的位数开始描述数字,因此从大的数与字符开始匹配』 [cpp](./vsc_leetcode/12.整数转罗马数字.cpp) 2020.11.27 ### 双指针法 - 盛最多水的容器『因为两个边共同决定了上限,因此将较短边向内移动,抛弃搜索次优解』 [py](./vsc_leetcode/11.盛最多水的容器.py) [cpp](./vsc_leetcode/11.盛最多水的容器.cpp) 2020.11.26 ### 搜索 - 盛最多水的容器『因为两个边共同决定了上限,因此将较短边向内移动,抛弃搜索次优解』 [py](./vsc_leetcode/11.盛最多水的容器.py) [cpp](./vsc_leetcode/11.盛最多水的容器.cpp) 2020.11.26 ## 日期归档 - 2020.11.26 盛最多水的容器『因为两个边共同决定了上限,因此将较短边向内移动,抛弃搜索次优解』 双指针法 搜索 [py](./vsc_leetcode/11.盛最多水的容器.py) [cpp](./vsc_leetcode/11.盛最多水的容器.cpp) - 2020.11.27 整数转罗马数字『生活中从大的位数开始描述数字,因此从大的数与字符开始匹配』 匹配 字符串 [cpp](./vsc_leetcode/12.整数转罗马数字.c