最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python原始字符串(raw strings)用法實例

 更新時間:2014年10月13日 09:17:09   投稿:shichen2014  
這篇文章主要介紹了Python原始字符串(raw strings)用法實例,在使用Python進(jìn)行字符串處理的過程中非常具有實用價值,需要的朋友可以參考下

本文實例講述了Python原始字符串(raw strings)用法,分享給大家供大家參考。具體如下:
 
Python原始字符串的產(chǎn)生正是由于有正則表達(dá)式的存在。原因是ASCII 字符和正則表達(dá)式特殊字符間所產(chǎn)生的沖突。比如,特殊符號“\b”在ASCII 字符中代表退格鍵,但同時“\b”也是一個正則表達(dá)式的特殊符號,代表“匹配一個單詞邊界”。

為了讓RE 編譯器把兩個字符“\b”當(dāng)成你想要表達(dá)的字符串,而不是一個退格鍵,你需要用另一個反斜線對它進(jìn)行轉(zhuǎn)義,即可以這樣寫:“\\b”。

但這樣做會把問題復(fù)雜化,特別是當(dāng)你的正則表達(dá)式字符串里有很多特殊字符時,就更容易令人困惑了。一般來說,原始字符串經(jīng)常被用于簡化正則表達(dá)式的復(fù)雜程度。

事實上,很多Python 程序員在定義正則表達(dá)式時都只使用原始字符串。

下面的例子用來說明退格鍵“\b” 和正則表達(dá)式“\b”(包含或不包含原始字符串)之間的區(qū)別:

復(fù)制代碼 代碼如下:
>>> m = re.match('\bblow', 'blow') # backspace, no match #退格鍵,沒有匹配>>> if m is not None: m.group()
...
>>> m = re.match('\\bblow', 'blow') # escaped \, now it works #用\轉(zhuǎn)義后,現(xiàn)在匹配了
>>> if m is not None: m.group()
...
'blow'
>>> m = re.match(r'\bblow', 'blow') # use raw string instead #改用原始字符串>>> if m is not None: m.group()
...
'blow'

你可能注意到我們在正則表達(dá)式里使用“\d”,沒用原始字符串,也沒出現(xiàn)什么問題。那是因為ASCII 里沒有對應(yīng)的特殊字符,所以正則表達(dá)式編譯器能夠知道你指的是一個十進(jìn)制數(shù)字。

原始字符串的這個特性讓一些工作變得非常的方便,比如正則表達(dá)式的創(chuàng)建。正則表達(dá)式是一些定義了高級搜索匹配方式的字符串,通常是由代表字符、分組、匹配信息、變量名和字符類等的特殊符號組成。正則表達(dá)式模塊已經(jīng)包含了足夠用的符號。但當(dāng)你必須插入額外的符號來使特殊字符表現(xiàn)的像普通字符的時候,你就陷入了“字符數(shù)字”的泥潭!這時原始字符串就會派上用場了。

除了原始字符串符號(引號前面的字母“r”)以外,原始字符串跟普通字符串有著幾乎完全相同的語法。這個'r'可以是小寫也可以是大寫,唯一的要求是必須緊靠在第一個引號前。在3個例子的第1個例子里面,我們需要一個反斜杠加一個“n”來而不是一個換行符。

復(fù)制代碼 代碼如下:
>>> '\n'
'\n'
>>> print '\n'
>>> r'\n'
'\\n'
>>> print r'\n'
\n

接下來的例子里,我們打不開我們的README文件了,為什么?因為'\t'和'\r'被當(dāng)成不在我們的文件名中的特殊符號,但它們實際上是文件路徑中的4個獨立的字符。
復(fù)制代碼 代碼如下:
>>> f = open('C:\windows\temp\readme.txt', 'r') Traceback (most recent call last):
File "", line 1, in ?
f = open('C:\windows\temp\readme.txt', 'r')IOError: [Errno 2] No such file or directory: 'C:\\win- dows\\temp\readme.txt'
>>> f = open(r'C:\windows\temp\readme.txt', 'r')>>> f.readline()
'Table of Contents (please check timestamps for last update!)\n'
>>> f.close()

希望本文所述對大家的Python程序設(shè)計有所幫助。

相關(guān)文章

  • python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別介紹

    python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別介紹

    我們經(jīng)常在尋找數(shù)據(jù)的某行或者某列的時常用到Pandas中的兩種方法iloc和loc,兩種方法都接收兩個參數(shù),第一個參數(shù)是行的范圍,第二個參數(shù)是列的范圍,這篇文章主要介紹了python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別,需要的朋友可以參考下
    2024-07-07
  • django雙下劃線的具體使用

    django雙下劃線的具體使用

    雙下劃線約定通常用于執(zhí)行一些特定的查詢操作,本文主要介紹了django雙下劃線的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Python pandas常用函數(shù)詳解

    Python pandas常用函數(shù)詳解

    這篇文章主要介紹了Python pandas常用函數(shù)詳解,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • 一文帶你搞懂Python中的文件操作

    一文帶你搞懂Python中的文件操作

    這篇文章主要為大家詳細(xì)介紹了Python中常見的文件操作的相關(guān)資料,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定的幫助,感興趣的可以了解一下
    2022-11-11
  • 使用PyQtGraph繪制精美的股票行情K線圖的示例代碼

    使用PyQtGraph繪制精美的股票行情K線圖的示例代碼

    這篇文章主要介紹了使用PyQtGraph繪制精美的股票行情K線圖的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • pyEcharts安裝及詳細(xì)使用指南(最新)

    pyEcharts安裝及詳細(xì)使用指南(最新)

    這篇文章主要介紹了pyEcharts安裝及詳細(xì)使用指南(最新),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python中調(diào)用和運(yùn)行其他.py文件的多種實現(xiàn)方法

    Python中調(diào)用和運(yùn)行其他.py文件的多種實現(xiàn)方法

    本文介紹了在Python中調(diào)用和運(yùn)行其他.py文件的四種方法:subprocess模塊、exec函數(shù)、import語句和os.system函數(shù),每種方法都有其適用場景和優(yōu)缺點
    2025-02-02
  • openCV入門學(xué)習(xí)基礎(chǔ)教程第二篇

    openCV入門學(xué)習(xí)基礎(chǔ)教程第二篇

    人臉識別,物體檢測,OpenCV是基石,下面這篇文章主要給大家介紹了關(guān)于openCV入門學(xué)習(xí)基礎(chǔ)教程的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • python爬蟲獲取京東手機(jī)圖片的圖文教程

    python爬蟲獲取京東手機(jī)圖片的圖文教程

    下面小編就為大家分享一篇python爬蟲獲取京東手機(jī)圖片的圖文教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Python學(xué)習(xí)筆記之集合的概念和簡單使用示例

    Python學(xué)習(xí)筆記之集合的概念和簡單使用示例

    這篇文章主要介紹了Python學(xué)習(xí)筆記之集合的概念和簡單使用,涉及Python集合的定義、查找、添加、刪除等相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2019-08-08

最新評論

大悟县| 子洲县| 读书| 靖州| 阜新市| 德格县| 乐安县| 贺州市| 黄浦区| 大渡口区| 临沂市| 岗巴县| 花莲市| 博兴县| 梅河口市| 宜良县| 同心县| 吉木萨尔县| 静宁县| 洛浦县| 河曲县| 邯郸县| 嘉义市| 略阳县| 聂荣县| 平谷区| 玉环县| 定兴县| 平山县| 黎平县| 铅山县| 克拉玛依市| 社会| 云龙县| 汝州市| 法库县| 工布江达县| 广东省| 九江市| 行唐县| 广水市|