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内置函数的用法实例教程
Sep 08 Python
python中使用mysql数据库详细介绍
Mar 27 Python
详解Django中Request对象的相关用法
Jul 17 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
Apr 24 Python
python生成式的send()方法(详解)
May 08 Python
python3 读取Excel表格中的数据
Oct 16 Python
Python爬虫实战之12306抢票开源
Jan 24 Python
Django 响应数据response的返回源码详解
Aug 06 Python
centos7之Python3.74安装教程
Aug 15 Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
Python实现Kerberos用户的增删改查操作
Dec 14 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与ASP
2006/10/09 PHP
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
PHP在特殊字符前加斜杠的实现代码
2011/07/17 PHP
php实现自动获取生成文章主题关键词功能的深入分析
2013/06/03 PHP
php快速查找数据库中恶意代码的方法
2015/04/01 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
用于table内容排序
2006/07/21 Javascript
innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别
2007/06/29 Javascript
JavaScript读取中文cookie时的乱码问题的解决方法
2009/10/14 Javascript
js中巧用cssText属性批量操作样式
2011/03/13 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
2014/10/21 Javascript
跟我学习javascript的this关键字
2020/05/28 Javascript
Bootstrap轮播加上css3动画,炫酷到底!
2015/12/22 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
jquery+html仿翻页相册功能
2016/12/20 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
2019/11/08 Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
2020/06/11 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
python xml解析实例详解
2016/11/14 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
浅谈python中的正则表达式(re模块)
2017/10/17 Python
tensorflow 1.0用CNN进行图像分类
2018/04/15 Python
Python处理CSV与List的转换方法
2018/04/19 Python
基于python实现学生管理系统
2018/10/17 Python
Pycharm连接远程服务器并实现远程调试的实现
2019/08/02 Python
Python tkinter实现简单加法计算器代码实例
2020/05/13 Python
教师实习的自我鉴定
2013/10/26 职场文书
办公室年终个人自我评价
2013/10/28 职场文书
篝火晚会主持词
2014/03/25 职场文书
探亲假请假条
2014/04/11 职场文书
大学感恩节活动总结
2015/05/05 职场文书
敬老院义诊活动总结
2015/05/07 职场文书
圆明园观后感
2015/06/03 职场文书