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的while循环中使用else以及循环嵌套的用法
Oct 14 Python
Django学习笔记之Class-Based-View
Feb 15 Python
最近Python有点火? 给你7个学习它的理由!
Jun 26 Python
python决策树之C4.5算法详解
Dec 20 Python
Python实现的栈(Stack)
Jan 26 Python
TensorFlow实现模型评估
Sep 07 Python
python实现DEM数据的阴影生成的方法
Jul 23 Python
PyQt Qt Designer工具的布局管理详解
Aug 07 Python
在django模板中实现超链接配置
Aug 21 Python
使用Python求解带约束的最优化问题详解
Feb 11 Python
Django Admin设置应用程序及模型顺序方法详解
Apr 01 Python
Python编写冷笑话生成器
Apr 20 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
基于Linux调试工具strace与gdb的常用命令总结
2013/06/03 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
JS在IE下缺少标识符的错误
2014/07/23 Javascript
JavaScript设计模式之外观模式介绍
2014/12/28 Javascript
Angularjs中UI Router全攻略
2016/01/29 Javascript
javascript中Date对象的使用总结
2016/11/21 Javascript
Angularjs实现数组随机排序的方法
2018/10/02 Javascript
JS实现十分钟倒计时代码实例
2018/10/18 Javascript
JS拖拽排序插件Sortable.js用法实例分析
2019/02/20 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
微信小程序实现Session功能及无法获取session问题的解决方法
2019/05/07 Javascript
微信小程序tabBar 返回tabBar不刷新页面
2019/07/25 Javascript
微信小程序实现手势滑动卡片效果
2019/08/26 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
npm qs模块使用详解
2020/02/07 Javascript
在Vuex中Mutations修改状态操作
2020/07/24 Javascript
详解Python的Django框架中的通用视图
2015/05/04 Python
python中matplotlib实现最小二乘法拟合的过程详解
2017/07/11 Python
Java及python正则表达式详解
2017/12/27 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
Python如何使用BeautifulSoup爬取网页信息
2019/11/26 Python
基于Python爬取爱奇艺资源过程解析
2020/03/02 Python
Python 操作 MySQL数据库
2020/09/18 Python
Python之字典添加元素的几种方法
2020/09/30 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
Django-silk性能测试工具安装及使用解析
2020/11/28 Python
美国知名的隐形眼镜电商:Contacts America
2019/11/19 全球购物
在C中是否有模拟继承等面向对象程序设计特性的好方法
2012/05/22 面试题
同步和异步有何异同,在什么情况下分别使用他们?
2012/12/28 面试题
四风存在的原因分析
2014/02/11 职场文书
《陶罐和铁罐》教学反思
2014/02/19 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
实习生评语
2014/04/26 职场文书
环保倡议书格式范文
2014/05/14 职场文书
孙振耀退休感言
2015/08/01 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL