python字符串中的单双引


Posted in Python onFebruary 16, 2017

python中字符串可以(且仅可以)使用成对的单引号、双引号、三个双引号(文档字符串)包围:

'this is a book'
 "this is a book"
"""this is a book"""

可在单引号包围的字符串中包含双引号,三引号等,但不能包含单引号自身(需转义)

'this is a" book'
'this is a"" book'
'this is a""" book'
'this is a\' book'

也可多单引号中的双引号转义,但通常没什么必要和意义

'this is a\" book'

同理,双引号中可包含单引号,但不能包含双引号以及由双引号构成的三引号

"this is a' book"
"this is a\" book"

也可对双引号中的单引号进行转义,但同样,这通常没有必要也没有意义

"this is a\' book"

现在还有一个问题,如果我想在单引号包围的字符串中显示“\'”呢,答案是分别对“\”和“'”进行转义,也即要想在字符串中显示“\”这个特殊字符,需对特殊字符本身进行转义,其他特殊字符类似。

>>> s='this is a\' book'
>>> print s
this is a' book

>>> s='this is a\\\' book'
>>> print s
this is a\' book

要显示多少次“\”就要对“\”进行多少次转义:

>>> s='this is a\\\\\' book'
>>> print s
this is a\\' book

同样,想在双引号包围的字符串中显示“\"”也要分别对“\”和“"”进行转义。

>>> s="this is a\\\" book"
>>> print s
this is a\" book

说到这里,有必要谈一谈字符串中“\'”和“\"”的替换问题,也即字符串本身是包含这样的子串的,比如:

>>> s='this is a\\\' book'
>>> s
"this is a\\' book"
>>> print s
this is a\' book

这里的字符串中包含“\'”这样一个子串,现在想把这个子串替换为“@@@”
>>> s=s.replace('\\\'','@@@')
>>> s
'this is a@@@ book'
>>> print s
this is a@@@ book

也即在书写将被替换的子串时,也需对特殊的字符进行转义,s=s.replace('\\\'','@@@')中经转义后,最终的字符串中将被替换掉的子串为“\'”.

双引号中含有特殊字符的子串的替换遵循同样的原理。

另外需要注意的是,想要知道字符串最终的样子则应当使用print函数将其打印出来,以免混淆。

>>> s='this is a\\\' book'
>>> s
"this is a\\' book"
>>> print s
this is a\' book

以上这篇python字符串中的单双引就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现异步回调机制代码分享
Jan 10 Python
Python使用os模块和fileinput模块来操作文件目录
Jan 19 Python
Python 中 Meta Classes详解
Feb 13 Python
Python3.6实现连接mysql或mariadb的方法分析
May 18 Python
使用python 3实现发送邮件功能
Jun 15 Python
Selenium元素的常用操作方法分析
Aug 10 Python
Python常见数据结构之栈与队列用法示例
Jan 14 Python
python实现控制COM口的示例
Jul 03 Python
python-视频分帧&多帧合成视频实例
Dec 10 Python
使用Keras实现简单线性回归模型操作
Jun 12 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
pycharm 实现调试窗口恢复
Feb 05 Python
使用PyV8在Python爬虫中执行js代码
Feb 16 #Python
Python错误提示:[Errno 24] Too many open files的分析与解决
Feb 16 #Python
Python变量和数据类型详解
Feb 15 #Python
Django学习笔记之Class-Based-View
Feb 15 #Python
关于Python面向对象编程的知识点总结
Feb 14 #Python
Django日志模块logging的配置详解
Feb 14 #Python
深入理解Python对Json的解析
Feb 14 #Python
You might like
浅谈PHP语法(1)
2006/10/09 PHP
php下用cookie统计用户访问网页次数的代码
2010/05/09 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
PHP对象的浅复制与深复制的实例详解
2017/10/26 PHP
JavaScript 学习技巧
2010/02/17 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
2014/09/06 Javascript
js实现交换运动效果的方法
2015/04/10 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
JS实现状态栏跑马灯文字效果代码
2015/10/24 Javascript
prototype.js常用函数详解
2016/06/18 Javascript
JS实现禁止鼠标右键的功能
2016/10/15 Javascript
详解js的六大数据类型
2016/12/27 Javascript
JS判断时间段的实现代码
2017/06/14 Javascript
ejsExcel模板在Vue.js项目中的实际运用
2018/01/27 Javascript
IE浏览器下JS脚本提交表单后,不能自动提示问题解决方法
2019/06/04 Javascript
Js通过AES加密后PHP用Openssl解密的方法
2019/07/12 Javascript
使用React代码动态生成栅格布局的方法
2020/05/24 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
Python 第一步 hello world
2009/09/25 Python
使用Python+Splinter自动刷新抢12306火车票
2018/01/03 Python
python如何使用unittest测试接口
2018/04/04 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
Python 一行代码能实现丧心病狂的功能
2020/01/18 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
2020/02/23 Python
Python对象的属性访问过程详解
2020/03/05 Python
Python astype(np.float)函数使用方法解析
2020/06/08 Python
HTML5拖拽功能实现的拼图游戏
2018/07/31 HTML / CSS
YSL圣罗兰美妆官方旗舰店:购买YSL口红
2018/04/16 全球购物
说一下Linux下有关用户和组管理的命令
2014/08/18 面试题
董事长助理岗位职责
2014/02/18 职场文书
2014年企业党支部工作总结
2014/12/04 职场文书
2014年政府采购工作总结
2014/12/09 职场文书
导游词之山西-五老峰
2019/10/07 职场文书
浅谈MySql整型索引和字符串索引失效或隐式转换问题
2021/11/20 MySQL