python中的原始字符串,神奇的反斜线
2017-11-01 23:36
344 查看
在普通字符串中,反斜线\代表转义,我们常用的换行符“\n”就是一个很好的例子。但是这在某些时候会引起不便,比如要输出限制文件目录:c:\newStaff
c:
ewStaff irst
\n被显示为了换行,\t被现实为了tab符号,可是这并不是我们想要的,那怎么办呢?当然你可以通过在路径分割的反斜线前面在加一个反斜线,得到我们期望的结果。
Python中的原始字符串是在普通字符串前加一个字符r(大写亦可)来标记的,可以认为原始字符串中的反斜线具有转义之名,不做转义之实,举两个例子说明下:
例一代码段1:
例二代码段1:
代码段1会报EOL while scanning string literal,而代码段2可以执行成功,输出为:hello world\\
(“具有转义之名,不做转义之实”可能有点词不达意,允许我姑且这么说吧!)
str = 'c:\newStaff\tiandi' print str上面的代码输出结果为:
c:
ewStaff irst
\n被显示为了换行,\t被现实为了tab符号,可是这并不是我们想要的,那怎么办呢?当然你可以通过在路径分割的反斜线前面在加一个反斜线,得到我们期望的结果。
str = 'c:\\newStaff\\tiandi' print str这样代码机会输出:c:\newStaff\tiandi,符合我们想要的结果,但是当路径很长很多的时候这样输入毕竟很麻烦(相信大家并不想对复制过来的路径一个一个的加上n个反斜线吧),这时Python中的原始字符串就派上用长了
str = r'C:\Program Files (x86)\Tencent\QQMicroGameBoxService\1.0.5.2\Log' print str猜猜上面会输出什么样的字符串,没错就是我们想要的路径:C:\Program Files (x86)\Tencent\QQMicroGameBoxService\1.0.5.2\Log
Python中的原始字符串是在普通字符串前加一个字符r(大写亦可)来标记的,可以认为原始字符串中的反斜线具有转义之名,不做转义之实,举两个例子说明下:
例一代码段1:
str1 = r'Let\'s go!' print str1例一代码段2:
str1 = r'Let\\'s go!' print str1代码段1是可以执行成功的,输出为:Let\'s go!,而代码段2会报invalid syntax
例二代码段1:
str1 = r'hello world\' print str1例二代码段2:
str1 = r'hello world\\' print str1
代码段1会报EOL while scanning string literal,而代码段2可以执行成功,输出为:hello world\\
(“具有转义之名,不做转义之实”可能有点词不达意,允许我姑且这么说吧!)
相关文章推荐
- Python 原始字符串(raw strings)的用法
- Python学习笔记-原始字符串
- 以写代学:python 原始字符串操作符&&字符串内建函数
- Python中原始字符串操作符 r R
- python中的原始字符串"r"
- Python 正则表达式辨析,原始字符串
- python原始字符串
- Python FAQ3-python中的原始(raw)字符串
- Python原始字符串(raw strings)用法实例
- devi into python 笔记(六)正则表达式 原始字符串
- Python中的原始字符串
- Python中的原始字符串
- python中的原始字符串(r)
- Python基础语法——(引号、字符串、长字符串、原始字符串、Unicode)
- python 3.3.3 字面量,正则,反斜杠和原始字符串
- python 原始字符串
- python 入门之 长字符串、原始字符串和unicode
- python学习 原始字符串操作符 print
- Wonderful String Translation Function in Python / Python神奇的字符串变换函数
- 转:核心笔记 : Python 原始字符串(raw strings)的用法