一篇文章搞懂python的转义字符及用法


Posted in Python onSeptember 03, 2020

什么是转义字符

转义字符是一个计算机专业词汇。在计算机当中,我们可以写出123 ,也可以写出字母abcd,但有些字符我们无法手动书写,比如我们需要对字符进行换行处理,但不能写出来换行符,当然我们也看不见换行符。像这种情况,我们需要在字符中使用特殊字符时,就需要用到转义字符,在python里用反斜杠\转义字符。

在交互式解释器中,输出的字符串用引号引起来,特殊字符用反斜杠\转义。虽然可能和输入看上去不太一样,但是两个字符串是相等的。

在python里,转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,具体都有哪些转义字符呢,见下表

一篇文章搞懂python的转义字符及用法

python当中,我们定义一个字符串。可以用单引号 ‘…' 或双引号 “…” 标识 。比如s = ‘abcd',或者s = “abcd”,如果我们想在这样的字符串里再写一个单引号呢?比如it's me

>>> s = 'it's me'
>>> s
 File "<ipython-input-34-9e8af72c0f6d>", line 1
  s = 'it's me'
      ^
SyntaxError: invalid syntax

如果这样实现,编辑器就会报错,因为这个字符串是用单引号括起来的,若果中间又出现一个单引号,到底三个单引号中哪两个单引号构成一个字符串呢?这里面就出现了歧义,而计算机最怕的就是歧义。为了解决这种情况,我们就需要用到转义字符了。

上述语句加上转义字符就是

>>> s = 'it\'s me'
>>> s
"it's me"

上述是单引号,双引号同理:

>>> s = "使用\"创建字符串"
>>> s
'使用"创建字符串'

当然有些情况下不用转义字符也可以实现我们的需求,比如字符串中只有单引号而没有双引号,就用双引号引用,否则用单引号引用。举例如下:

>>> s = "it's me"
>>> s
"it's me"

>>> s = '使用"创建字符串'
>>> s
'使用"创建字符串'

但还是推荐使用转义字符,转义字符更具有通用性,也不需要我们去判断字符串中是否只有单引号或者双引号。

另外print() 函数会生成可读性更好的输出, 它会省去引号并且打印出转义后的特殊字符。见下边:

>>> s = '"Isn\'t a student." she said.'
>>> s
'"Isn\'t a student." she said.'
>>> print(s)
"Isn't a student." she said.

>>> s = 'First line.\nSecond line.' # \n means newline
>>> s # without print(), \n is included in the output
'First line.\nSecond line.'
>>> print(s) # with print(), \n produces a new line
First line.
Second line.

如果要在字符串里使用 \ ,即使得字符串中的\用作普通字符,那么就需要字符\本身也要转义,我们用\\表示,\\表示的字符就是\

>>> s = "换行符是\\n。"
>>> print(s)
换行符是\n。

如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许在字符串前加r,表示内部的字符串默认不转义,见下边:

>>> s = r"换行符是\n。"
>>> print(s)
换行符是\n。

到此这篇关于一篇文章搞懂python的转义字符及用法的文章就介绍到这了,更多相关python 转义字符内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python基础教程之常用运算符
Aug 29 Python
Python基于辗转相除法求解最大公约数的方法示例
Apr 04 Python
Python实现去除列表中重复元素的方法小结【4种方法】
Apr 27 Python
Python决策树之基于信息增益的特征选择示例
Jun 25 Python
Python查找第n个子串的技巧分享
Jun 27 Python
python读写LMDB文件的方法
Jul 02 Python
python3 property装饰器实现原理与用法示例
May 15 Python
Django使用模板后无法找到静态资源文件问题解决
Jul 19 Python
关于python字符串方法分类详解
Aug 20 Python
python智联招聘爬虫并导入到excel代码实例
Sep 09 Python
Python urlopen()和urlretrieve()用法解析
Jan 07 Python
解决Pycharm 导入其他文件夹源码的2种方法
Feb 12 Python
容易被忽略的Python内置类型
Sep 03 #Python
python类共享变量操作
Sep 03 #Python
Python pip install之SSL异常处理操作
Sep 03 #Python
详解python tkinter 图片插入问题
Sep 03 #Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
Sep 03 #Python
PyTorch中Tensor的数据类型和运算的使用
Sep 03 #Python
python开发入门——set的使用
Sep 03 #Python
You might like
关于PHP自动判断字符集并转码的详解
2013/06/26 PHP
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
PHPStorm+XDebug进行调试图文教程
2016/06/13 PHP
mac下多个php版本快速切换的方法
2016/10/09 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
2013/11/05 Javascript
javascript简单性能问题及学习笔记
2014/02/04 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
javascript实现uploadify上传格式以及个数限制
2015/11/23 Javascript
纯js代码制作的网页时钟特效【附实例】
2016/03/30 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
2017/03/07 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
jquery仿京东商品放大浏览页面
2017/06/06 jQuery
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
浅谈Vue 数据响应式原理
2018/05/07 Javascript
vue页面切换过渡transition效果
2018/10/08 Javascript
微信小程序实现发送验证码按钮效果
2018/12/20 Javascript
对layui初始化列表的CheckBox属性详解
2019/09/13 Javascript
Vue 自定义指令实现一键 Copy功能
2019/09/16 Javascript
Python时间戳与时间字符串互相转换实例代码
2013/11/28 Python
python实现的一个p2p文件传输实例
2014/06/04 Python
举例讲解Python编程中对线程锁的使用
2016/07/12 Python
python 上下文管理器使用方法小结
2017/10/10 Python
基于Python+Appium实现京东双十一自动领金币功能
2019/10/31 Python
Python运行异常管理解决方案
2020/03/09 Python
浅谈Python程序的错误:变量未定义
2020/06/02 Python
python 检测nginx服务邮件报警的脚本
2020/12/31 Python
CSS 说明横向进度条最后显示文字的实现代码
2020/11/10 HTML / CSS
迪奥美国官网:Dior美国
2019/12/07 全球购物
大二自我鉴定范文
2013/10/05 职场文书
个人能力自我鉴赏
2014/01/25 职场文书
毕业生就业推荐表自我鉴定
2014/03/20 职场文书
vue3不同环境下实现配置代理
2022/05/25 Vue.js