中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python反斜杠不轉義是怎么回事

發布時間:2020-09-02 11:20:51 來源:億速云 閱讀:311 作者:小新 欄目:編程語言

這篇文章主要介紹python反斜杠不轉義是怎么回事,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

python本身使用 \ 來轉義一些特殊字符,比如在字符串中加入引號的時候

s = 'i\'m superman'
print(s)    # i'm superman

為了防止和字符串本身的引號沖突,使用 \ 來轉義,一般情況下這個也不會引起什么問題,但是當你要使用 \ 來轉義 \ 的時候,就比較混亂了,比如我們想要輸出一個 \ ,得寫兩個 \ ,否則會報語法錯誤,因為 \ 把后面的引號給轉義了,必須使用 \。

# 錯誤寫法
# print '\'

# 正確寫法
print('\\')     # \

# 原生字符串
print(r'\\')    # \\

將 \ 轉義一下使其不具備轉義功能,才可以正確輸出,當使用原生字符串的時候,輸出顯示了兩個 \ ,看起來好像是寫幾個輸出幾個的樣子,如果這樣想的話,你可以試一下,看能不能輸出奇數個 \。

python的原生字符串不能以反斜杠結尾的問題

Python的原生字符串(raw string)是個很有用的東西,可以少寫很多反斜線(轉義符號)。

不過它有個著名的bug,就是不能以反斜線結尾,這讓人很無語。首先要澄清的是不是不能以反斜線結尾,而是不能以奇數個反斜線結尾。

其次,這個bug的原因是一些處理器(例如主要的正則表達式引擎)希望進行它們自己的反斜線轉義處理,而這些處理器不允許字符串以未匹配的反斜線結尾。

最后,解決辦法就是把反斜線放在另一個字符串里,Python會自動進行合并:

dir = r"\this\is\my\dos\dir" "\\"

雖然原生字符串不是很完美,但是它已經可以幫我們解決很大一部分的問題了。比如當你想匹配"\"的時候,原生字符串可以讓你至少少寫一半的\,即節省代碼量,又增加了可讀性。

import re
_string = '\\\\'
print(_string)  # \\

# 字符串
for i in re.findall('\\\\', _string):
    print(i)    
    # \
    # \
# 原生字符串
for i in re.findall(r'\\', _string):
    print(i)    
    # \
    # \

以上是python反斜杠不轉義是怎么回事的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

韶山市| 宝兴县| 宁远县| 夏津县| 杭锦后旗| 镇巴县| 炎陵县| 修文县| 镇原县| 剑川县| 贞丰县| 德昌县| 隆安县| 通海县| 鱼台县| 从江县| 肇州县| 馆陶县| 宕昌县| 内乡县| 翁牛特旗| 手游| 叙永县| 丽水市| 桐梓县| 衡水市| 道孚县| 新源县| 九台市| 信阳市| 达州市| 习水县| 阿克陶县| 社会| 寻甸| 景宁| 大埔区| 故城县| 安新县| 德清县| 墨江|