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实现的重启关机程序实例
Aug 21 Python
简单的Python抓taobao图片爬虫
Oct 26 Python
Python 对象中的数据类型
May 13 Python
Python+tkinter模拟“记住我”自动登录实例代码
Jan 16 Python
python入门前的第一课 python怎样入门
Mar 06 Python
浅析Python装饰器以及装饰器模式
May 28 Python
Python字典推导式将cookie字符串转化为字典解析
Aug 10 Python
基于pandas中expand的作用详解
Dec 17 Python
浅析python 动态库m.so.1.0错误问题
May 09 Python
django为Form生成的label标签添加class方式
May 20 Python
Python爬取梨视频的示例
Jan 29 Python
浅谈matplotlib默认字体设置探索
Feb 03 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
mysql alter table命令修改表结构实例详解
2016/09/24 PHP
PHP常用函数之格式化时间操作示例
2019/10/21 PHP
广告切换效果(缓动切换)
2009/05/27 Javascript
js下将字符串当函数执行的方法
2011/07/13 Javascript
用javascript添加控件自定义属性解析
2013/11/25 Javascript
Javascript浅谈之this
2013/12/17 Javascript
js获取域名的方法
2015/01/27 Javascript
jQuery遍历json中多个map的方法
2015/02/12 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
2015/07/27 Javascript
果断收藏9个Javascript代码高亮脚本
2016/01/06 Javascript
基于JavaScript实现全屏透明遮罩div层锁屏效果
2016/01/26 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
JQuery实现DIV其他动画效果的简单实例
2016/09/18 Javascript
Bootstrap企业网站实战项目4
2016/10/14 Javascript
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
js 毫秒转天时分秒的实例
2017/11/17 Javascript
基于jQuery Ajax实现下拉框无刷新联动
2017/12/06 jQuery
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
详解VUE前端按钮权限控制
2019/04/26 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
python内存管理分析
2015/04/08 Python
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python之DataFrame实现excel合并单元格
2021/02/22 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
Python tkinter三种布局实例详解
2020/01/06 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
一些Unix笔试题和面试题
2012/09/25 面试题
银行实习生自我鉴定范文
2013/09/19 职场文书
美工的岗位职责
2013/11/14 职场文书
素质教育标语
2014/06/27 职场文书
用Python selenium实现淘宝抢单机器人
2021/06/18 Python
从零开始在Centos7上部署SpringBoot项目
2022/04/07 Servers
SpringCloud超详细讲解Feign声明式服务调用
2022/06/21 Java/Android