斜杠的困擾:
-
Python的str里面 \ 是終止符不能放末尾,二進(jìn)制串也是。
圖片.png -
二進(jìn)制串(ASCII字符)轉(zhuǎn)字符串時(shí)會(huì)把單 / 轉(zhuǎn)換為雙 //
圖片.png 與大多數(shù)編程語言相同,正則表達(dá)式里使用"\"作為轉(zhuǎn)義字符,這就可能造成反斜杠困擾。假如你需要匹配文本中的字符"",那么使用編程語言表示的正則表達(dá)式里將需要4個(gè)反斜杠"\\\\":前兩個(gè)和后兩個(gè)分別用于在編程語言里轉(zhuǎn)義成反斜杠,轉(zhuǎn)換成兩個(gè)反斜杠后再在正則表達(dá)式里轉(zhuǎn)義成一個(gè)反斜杠。Python里的原生字符串很好地解決了這個(gè)問題,這個(gè)例子中的正則表達(dá)式可以使用r"\"表示。同樣,匹配一個(gè)數(shù)字的"\d"可以寫成r"\d"。有了原生字符串,你再也不用擔(dān)心是不是漏寫了反斜杠,寫出來的表達(dá)式也更直觀。
那怎么用正則表達(dá)式匹配出 a="cdskjcs\xwcds"中的"\x"?
Python的傳值與傳引用:
傳[ ] , { } 可變對(duì)象可以修改內(nèi)容,但是傳數(shù)字還有字符不可以。
>>>def extend_the_url(url):
if('http' not in url):
url='http:'+url
>>>url='xss'
>>>extend_the_url(url)
>>>url
Out[4]: 'xss'
兩個(gè)函數(shù)定義時(shí)出現(xiàn)嵌套+引用外部函數(shù)變量怎么辦?
- 在外部函數(shù)中定義的局部變量無法在內(nèi)部函數(shù)直接引用。( 加global也不行!)

image.png
- 方法1: 添加
nonlocal 變量名

image.png
- 方法2:上列表[ ]

image.png
測試使用的模塊代碼:
if name=='main':

