新聞中心
初學Python時應該對Python概念有所了解,其實Python就是:是一種面向?qū)ο蟆⒅弊g式計算機程序設計語言,也是一種功能強大而完善的通用型語言,已經(jīng)具有十多年的發(fā)展歷史。

創(chuàng)新互聯(lián)公司自2013年起,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目做網(wǎng)站、成都網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元遂溪做網(wǎng)站,已為上家服務,為遂溪各地企業(yè)和個人服務,聯(lián)系電話:13518219792
但是對于初學者來說,要用好這個功能還是有點難度,我花了好長時間才摸出了點門道。由于我記性不好,很容易就忘事,所以還是寫下來比較好一些,同時也可以加深印象,整理思路。
1 Python正則式的基本用法
Python的正則表達式的模塊是 ‘re’,它的基本語法規(guī)則就是指定一個字符序列,比如你要在一個字符串s=’
123abc456’ 中查找字符串 ’abc’,只要這樣寫:
- else:
- # example for windows
- gnuplot_exe = r"c:\gnuplot\bin\pgnuplot.exe"
- 然后可以到dos下去運行easy.py和grid.py。
- 如 cd C:\libsvm-2.89\tools
- python grid.py train.txt
結果就是:
這里用到的函數(shù) ”findall(rule , target [,flag] )” 是個比較直觀的函數(shù),就是在目標字符串中查找符合規(guī)則的字符串。第一個參數(shù)是規(guī)則,第二個參數(shù)是目標字符串。后面還可以跟一個規(guī)則選項(選項功能將在compile函數(shù)的說明中詳細說明)。返回結果結果是一個列表,中間存
放的是符合規(guī)則的字符串。如果沒有符合規(guī)則的字符串被找到,就返回一個空列表。為什么要用r’ ..‘字符串(raw字符串)? 由于正則式的規(guī)則也是由一個字符串定義的,而在正則式中大量使用轉(zhuǎn)義字符’\’,如果不用raw字符串。
則在需要寫一個’\’的地方,你必須得寫成’\\’,那么在要從目標字符串中匹配一個’\’的時候,你就得寫上4個’\’成為’\\\\’!這當然很麻煩,也不直觀,所以一般都使用r’’來定義規(guī)則字符串。當然,某些情況下,可能不用raw字符串比較好。
下面來一個一個的說明這些規(guī)則的含義,不過說明的順序并不是按照上面的順序來的,而是我認為由淺入深,由基本到復雜的順序來編排的。同時為了直觀,在說明的過程中盡量多舉些例子以方便理解。
初學Python首先說明一下字符集合設定的方法。由一對方括號括起來的字符,表明一個字符集合,能夠匹配包含在其中的任意一個字符。比如 [abc123],表明字符’a’ ‘b’ ‘c’ ‘1’ ‘2’ ‘3’都符合它的要求??梢员黄ヅ?。
在’[‘ ‘]’中還可以通過 ’-‘ 減號來指定一個字符集合的范圍,比如可以用[a-zA-Z]來指定所以英文字母的大小寫,因為英文字母是按照從小到大的順序來排的。你不可以把大小的順序顛倒了,比如寫成[z-a]就不對了。
如果在’[‘ ‘]’里面的開頭寫一個 ‘^’ 號,則表示取非,即在括號里的字符都不匹配。如[^a-zA-Z]表明不匹配所有英文字母。但是如果 ‘^’不在開頭,則它就不再是表示取非,而表示其本身,如[a-z^A-Z]表明匹配所有的英文字母和字符’^’。
它匹配一個單詞的邊界,比如空格等,不過它是一個‘0’長度字符,它匹配完的字符串不會包括那個分界的字符。而如果用’\s’來匹配的話,則匹配出的字符串中會包含那個分界符。
初學Python正則式需要匹配不定長的字符串,那就一定需要表示重復的指示符。Python的正則式表示重復的功能很豐富靈活。重復規(guī)則的一般的形式是在一條字符規(guī)則后面緊跟一個表示重復次數(shù)的規(guī)則,已表明需要重復前面的規(guī)則一定的次數(shù)。
【編輯推薦】
- 如何使Python嵌入C++應用程序?
- 深入探討Ruby與Python語法比較
- Python學習資料介紹分享
- Python學習經(jīng)驗談:版本、IDE選擇及編碼解 決方案
- 淺析Python的GIL和線程安全
分享標題:初學Python時相關注意事宜
本文路徑:http://www.5511xx.com/article/dpsosjd.html


咨詢
建站咨詢
