详解Python中的正斜杠与反斜杠

yipeiwu_com5年前Python基础

首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows

(一)目录中的斜杠们

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的方式也省去了反斜杠\转义的烦恼

例:在Python中,记录路径时有以下几种写法,如:(大家都知道\n是换行的意思)

report_dir1=r‘C:\Local\Programs\Python\Python35\Lib\n_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"\\"。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

压缩包密码破解示例分享(类似典破解)

昨天翻硬盘,找到一个好东西,可惜自己加了密码自己不记得了。试了几个常用的没试出来,于是写了这么个小脚本来替我尝试。。呵呵,还真给解出来了。python脚本内容如下,跑跑自己加密的压缩包还...

Python实现识别手写数字 Python图片读入与处理

Python实现识别手写数字 Python图片读入与处理

写在前面 在上一篇文章Python徒手实现手写数字识别—大纲中,我们已经讲过了我们想要写的全部思路,所以我们不再说全部的思路。 我这一次将图片的读入与处理的代码写了一下,和大纲写的过程一...

matplotlib在python上绘制3D散点图实例详解

matplotlib在python上绘制3D散点图实例详解

大家可以先参考官方演示文档: 效果图: ''' ============== 3D scatterplot ============== Demonstration of a ba...

详解【python】str与json类型转换

在写接口测试框架时。避免不了数据类型的转换,比如强制转换string类型,比如转json类型 str转json python字符串转json对象,需要使用json模块的loads函数...

基于python plotly交互式图表大全

基于python plotly交互式图表大全

plotly可以制作交互式图表,直接上代码: import plotly.offline as py from plotly.graph_objs import Scatter, L...