python 本身可以使用反斜槓 \ 來轉義一些特殊字元,比如在字串中加入引號的時候:
>>> syztoo = 'it\'s a song'
>>> syztoo
"it's a song"
>>> print (syztoo)
it's a song
當然也可以轉義反斜槓本身,比如:
>>> file = 'c:\\now'
>>> file
'c:\\now'
>>> print (file)
c:\now
當字串當**現多個特殊字元需要轉義時,為了方便,python 提供了原生字串的賦值的方法,在字串前面加 r,比如:
>>> file = r'c:\now\table\nginx'
>>> print (file)
c:\now\table\nginx
不過在 python 裡有個 bug:
>>> file = r'c:\now\table\nginx\'
file "", line 1
file = r'c:\now\table\nginx\'
^syntaxerror: eol while scanning string literal
在變數賦值時,若字串以反斜槓結尾,python 會報錯, 即使使用 python 的原生字串方式賦值也不行;
其實字串也並不是不能以反斜槓結尾,只是不能以奇數個反斜槓結尾,比如:
>>> file = r'c:\now\table\nginx\\'
>>> print (file)
c:\now\table\nginx\\
上面字串以兩個反斜槓結尾,python 正常列印執行,那怎麼實現字串以單個反斜槓結尾呢?
解決辦法是將反斜槓放入另乙個字串裡面,python 自動合併:
>>> file = r'c:\now\table\nginx' '\\'
>>> print (file)
c:\now\table\nginx\
斜槓 和反斜槓
unix使用斜槓 作為路徑分隔符,而web應用最新使用在unix系統上面,所以目前所有的網路位址都採用斜槓 作為分隔符。windows系統已經使用斜槓 作為dos命令提示符的引數標誌了,為了不混淆,所以採用反斜槓 作為路徑分隔符。隨著發展,dos系統已經被淘汰了,命令提示符也用的很少,斜槓和反斜槓在...
Python中的正斜槓與反斜槓
首先,左傾斜是正斜槓,右傾斜是反斜槓,可以記為 除號是正斜槓一般來說對於目錄分隔符,unix和web用正斜槓 windows用反斜槓,但是現在windows 一 目錄中的斜槓們 python讀檔案需要輸入的目錄引數,列出以下例子 path r c windows temp readme.txt pa...
Python中的正斜槓與反斜槓
首先,左傾斜是正斜槓,右傾斜是反斜槓,可以記為 除號是正斜槓一般來說對於目錄分隔符,unix和web用正斜槓 windows用反斜槓,但是現在windows 一 目錄中的斜槓們 python讀檔案需要輸入的目錄引數,列出以下例子 path r c windows temp readme.txt pa...