首先,"/"左倾斜是正斜杠,""右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows
(一)目录中的斜杠们
python读文件需要输入的目录参数,列出以下例子:
path = r"C:Windowstempreadme.txt" path1 = r"c:windowstempreadme.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的方式也省去了反斜杠转义的烦恼
例:在Python中,记录路径时有以下几种写法,如:(大家都知道n是换行的意思)
report_dir1=r‘C:LocalProgramsPythonPython35Libn_test' report_dir2=‘C:\Local\Programs\Python\Python35\Lib\n_test' report_dir3=‘C:/Local/Programs/Python/Python35/Lib/n_test'
这三个路径的写法是等价的:
report_dir1中加入r后,使得编译器不会把‘n_test'中的“n”单独作为一个换行符,而是与后面的“_test”作为一个整体。
report_dir2中都是\,使用双斜杠是因为其中一个反斜杠代表转义的意思,因此每一个\都被转义成。
report_dir3就不用自说了。
另外,补充一点,在Python中,如果在打印的句末加上"",则为下一行继续,不会换行。
(二)正则表达式中的斜杠们
正则表达式匹配反斜杠"",为什么是"\\"或是 r"\"呢?
因为在正则表达式中为特殊符号,为了取消它在正则表达式中的特殊意义需要加一个就变成了\,但是问题又来了,也是字符串中的特殊字符,所以又要分别对两个取消其特殊意义,即为\\。Python中有一个原始字符串 *** 作符,用于那些字符串中出现特殊字符,在原始字符串中,没有转义字符和不能打印的字符。这样就可以取消了在字符串中的转义功能,即r"\"。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)