本篇源自 py2.7.9-docs 的 faq.pdf 中的“3.23 Why can’t raw strings (r-strings) end with a backslash?”
更準確的說,原始字串即以r修飾的字串,不能以奇數個反斜槓結束;
原始字串被設計用來作為一些處理器(主要是正則表示式引擎)的輸入。這種處理器會認為這種未匹配的末端反斜槓是種錯誤,所以,原始字串也就不允許以奇數個反斜槓結束。反過來,他們允許你使用斜槓來表示轉義,包括\"表示",\t 表示 TAB 等。當原始字串用於這些處理器時,這個規則適用。
如果原始字串不用於正則表示式等處理器,只是簡單的代表一個字串,那麼該串中的 \ 就是 \,而不再具有轉義的含義,這就是所謂的‘原始’。
下面我會一步步的解釋字串和原始字串的區別
1.用於單獨的字串表示:
簡單字串中存在 \ 轉義行為,而原始字串中 \n 就是 \n 字元
>>> s = "i have\na dream">>> r = r'i have\na dream'>>> print si havea dream>>> print ri have\na dream
Loading...
未載入完,嘗試【重新整理】or【關閉小說模式】or【關閉廣告遮蔽】。
嘗試更換【Firefox瀏覽器】or【Chrome谷歌瀏覽器】開啟多多收藏!
移動流量偶爾打不開,可以切換電信、聯通、Wifi。
收藏網址:www.peakbooks.cc
(>人<;)