国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

python中的反斜杠問題深入講解

2024-09-09 19:02:36
字體:
來源:轉載
供稿:網友

前言

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

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

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

# 錯誤寫法# print '/'# 正確寫法print('//')  # /# 原生字符串print(r'//') # //

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

補充――――――――――――――――――

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

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

不過它有個著名的bug,就是不能以反斜線結尾,這讓人很無語。今天突然發現General Python FAQ里有進行說明,并給出了解決辦法。

首先要澄清的是不是不能以反斜線結尾,而是不能以奇數個反斜線結尾。

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

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

dir = r"/this/is/my/dos/dir" "http://"

補充結束――――――――――――――――――

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

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

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網之家的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富川| 信宜市| 神农架林区| 安吉县| 玉环县| 盐津县| 余庆县| 大庆市| 庆阳市| 湘潭市| 进贤县| 永清县| 福贡县| 托克逊县| 巫山县| 高淳县| 舞钢市| 神木县| 历史| 大埔区| 兴城市| 利辛县| 东辽县| 大同县| 贡嘎县| 松滋市| 湖口县| 博罗县| 高碑店市| 洛南县| 岐山县| 抚松县| 扎赉特旗| 丰都县| 灵武市| 新巴尔虎右旗| 攀枝花市| 塘沽区| 金阳县| 无锡市| 石渠县|