前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python基础教程项目1:及时标记

python基础教程项目1:及时标记

作者头像
py3study
发布2020-01-15 11:17:16
4840
发布2020-01-15 11:17:16
举报
文章被收录于专栏:python3

终于把第一个项目啃的差不多了,对于一个初学者来说很有难度。

这个项目的目的是将文本转化为标记语言(例子中是HTML)。

基本的思路是这样的:

1.读取文本文件,利用生成器遍历文本,并将文本转化为处理的基本单位——块(block)

2.使用正则表达式过滤块中的强调语句、URL、email地址。添加相应的标签,如<em></em> <a></a>等。

3.根据语言特点制定一些规则,对块逐条匹配,添加相应的标签。如<p></p> <ul></ul>等。

相应的,实现的时候分成了几个模块:

markup.py:主模块,调用各个模块实现业务逻辑。

util.py:生成器,遍历文本,转化为块。

handlers.py:过滤块中的特殊语句。为rules指定的块添加标签,输出结果。

rules.py:判断markup指定的块的类型,调用handlers处理。

个人感觉比较难的地方:

1.模块的组织,类的设计

2.迭代器,生成器

3.正则表达式,re中相关函数的使用

4.自省

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/06/27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档