python怎么用左斜杠拼接字符?

python怎么用左斜杠拼接字符?,第1张

目录中的斜杠

python读文件需要输入的目录参数,列出以下例子:

path = r"C:\Windows\temp\readme.txt"

path1 = r"c:\windows\temp\readme.txt"

path2 = "c:\\windows\\temp\\readme.txt"

path3 = "c:/windows/temp/readme.txt"

打开文件函数open()中的参数可以是path也可以是path1、path2、path3。

path:"\"为字符串中的特殊字符,加上r后变为原始字符串,则不会对字符串中的"\t"、"\r" 进行字符串转义

path1:大小写不影响windows定位到文件

path2:用一个"\"取消第二个"\"的特殊转义作用,即为"\\"

path3:用正斜杠做目录分隔符也可以转到对应目录,并且在python中path3的方式也省去了反斜杠\转义的烦恼

3

正则表达式中的斜杠们

正则表达式匹配反斜杠"\",为什么是"\\\\"或是 r"\\"呢?

因为在正则表达式中\为特殊符号,为了取消它在正则表达式中的特殊意义需要加一个\就变成了\\,但是问题又来了,\也是字符串中的特殊字符,所以又要分别对两个\取消其特殊意义,即为\\\\。Python中有一个原始字符串 *** 作符,用于那些字符串中出现特殊字符,在原始字符串中,没有转义字符和不能打印的字符。这样就可以取消了\在字符串中的转义功能,即r"\\"。

用字符串相加看看行不行,虽然可能稍微烦了点。

>>>s=r"c:\windows"+'\\'

>>>s

'c:\\windows\\'

>>>print s

c:\windows\

>>>

刚才又在正则表达式中试了试。

发现可能稍微有些不同,

可以直接在原始字符串末尾使用两个斜杠,

但其实就如使用了一个斜杠一般:

>>>import re

>>>r=re.compile(r'\w+\\')

>>>r.findall(s)

['windows\\']

>>>print _[0]

windows\

>>>

其实一般不用太在意:

>>>r.findall(r"hello\world"+'\\')

['hello\\', 'world\\']

>>>for i in _:

print i

hello\

world\

>>>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11688189.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存