斜杠的困扰:
-
Python的str里面 \ 是终止符不能放末尾,二进制串也是。
-
二进制串(ASCII字符)转字符串时会把单 / 转换为双 //
与大多数编程语言相同,正则表达式里使用"\"作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符"",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\"表示。同样,匹配一个数字的"\d"可以写成r"\d"。有了原生字符串,你再也不用担心是不是漏写了反斜杠,写出来的表达式也更直观。
那怎么用正则表达式匹配出 a="cdskjcs\xwcds"中的"\x"?
Python的传值与传引用:
传[ ] , { } 可变对象可以修改内容,但是传数字还有字符不可以。
>>>def extend_the_url(url):
if('http' not in url):
url='http:'+url
>>>url='xss'
>>>extend_the_url(url)
>>>url
Out[4]: 'xss'
两个函数定义时出现嵌套+引用外部函数变量怎么办?
- 在外部函数中定义的局部变量无法在内部函数直接引用。( 加global也不行!)
- 方法1: 添加
nonlocal 变量名
- 方法2:上列表[ ]
测试使用的模块代码:
if name=='main':