python基礎教程項目1:及時標記

終於把第一個項目啃的差不多了,對於一個初學者來說很有難度。

這個項目的目的是將文本轉化爲標記語言(例子中是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.自省
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章