ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:559.13KB ,
资源ID:19275451      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19275451.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(全五种Python 转义表示法Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

全五种Python 转义表示法Word文档格式.docx

1、那个013又是什么意思呢?是转义符号,上面已经说过013是 ASCII 编码的八进制表示,注意前面是0且不可省略,而不是字母o把八进制的 13 转成 10 进制后是 11对照查看 ASCII 码表,11 对应的是一个垂直定位符号,这就能解释,为什么是阶梯状的输出字符串。2. 转义的 5 种表示法ASCII 有 128 个字符,如果用 八进制表示,至少得有三位数,才能将其全部表示。这就是为什么说上面的首位不能省略的原因,即使现在用不上,我也得把它空出来。而如果使用十六进制,只要两位数就其 ASCII 的字符全部表示出来。同时为了避免和八进制的混淆起来,所以在后面要加上英文字母x表示十六进制,后面

2、再接两位十六进制的数值。开头并接三位 0-7 的数值,表示 8 进制x开头并接两位 0-f 的数值,表示 16进制因此,当我定义一个字符串的值为hello+ 回车 +world时,就有了多种方法:# 第一种方法:8进制hello012worldworld# 第二种方法:16 进制hellox0aworld通常我们很难记得住一个字符的 ASCII 编号,即使真记住了,也要去转换成八进制或者16进制,实在是太难了。因此对于一些常用并且比较特殊字符,我们习惯用另一种类似别名的方式,比如使用n表示换行,它与012、x0a是等价的。与此类似的表示法,还有如下这些于是,要实现,就有了第三种方法# 第三种方

3、法:使用类似别名的方法hellonworld到目前为止,我们掌握了 三种转义的表示法。已经非常难得了,让我们的脑洞再大一点吧,接下来再介绍两种。ASCII 码表所能表示字符实在太有限了,想打印一个中文汉字,抱歉,你得借助 Unicode 码。Unicode 编码由 4 个16进制数值组合而成 print(u4E2D)中什么?我为什么知道中的 unicode 是u4E2D?像下面这样打印就知道啦# Python 2.7 a = u中 auu4e2d由此,要实现,就有了第四种方法。# 第四种方法:使用 unicode ,u000a 表示换行 print(hellou000aworldworld看到

4、这里,你是不是以为要结束啦?不,还没有。下面还有一种。Unicode 编码其实还可以由 8 个32进制数值组合而成,为了以前面的区分开来,这里用U开头。# 第五种方法:使用 unicode ,U0000000A 表示换行helloU0000000Aworld好啦,目前我们掌握了五种转义的表示法。总结一下:1.开头并接三位 0-7 的数值(八进制) - 可以表示所有ASCII 字符2.x开头并接两位 0-f 的数值(十六进制) - 可以表示所有ASCII 字符3.u开头并接四位 0-f 的数值(十六进制) - 可以表示所有 Unicode 字符4.U开头并接八位 0-f 的数值(三十二进制) -

5、 可以表示所有 Unicode 字符5.开头后接除 x、u、U 之外的特定字符 - 仅可表示部分字符为什么标题说,转义也可以炫技呢?试想一下,假如你的同事,在打印日志时,使用这种 unicode 编码,然后你在定位问题的时候使用这个关键词去搜,却发现什么都搜不到?这就扑街了。虽然这种行为真的很 sb,但在某些人看来也许是非常牛逼的操作呢?五种转义的表示法到这里就介绍完成,接下来是更多转义相关的内容,也是非常有意思的内容,有兴趣的可以继续往下看。3. raw 字符串当一个字符串中具有转义的字符时,我们使用 print 打印后,正常情况下,输出的不是我们原来在字符串中看到的那样子。那如果我们需要输

6、出hellonworld,不希望 Python 将转义成 换行符呢?这种情况下,你可以在定义时将字符串定义成 raw 字符串,只要在字符串前面加个r或者R即可。 print(rhellonworld print(Rhellonworld然而,不是所有时候都可以加的,比如当你的字符串是由某个程序/函数返回给你的,而不是你自己生成的# 假设这个是外来数据,返回 body = spider() print(body)这个时候打印它,n就是换行打印。4. 使用 repr对于上面那种无法使用的情况,可以试一下repr来解决这个需求: body = repr(spider() print(body)hel

7、lonworld经过函数的处理后,为让 print 后的结果,接近字符串本身的样子,它实际上做了两件事1.将变为了2.在字符串的首尾添加你可以在 Python Shell 下敲入 变量 回车,就可以能看出端倪。首尾是添加还是,取决于你原字符串。 body= repr(body)hellonworld body=5. 使用 string_escape如果你还在使用 Python 2 ,其实还可以使用另一种方法。那就是使用string.encode(string_escape)的方法,它同样可以达到的效果 .encode()6. 查看原生字符串综上,想查看原生字符串有两种方法:1.如果你在 Pyt

8、hon Shell 交互模式下,那么敲击变量回车2.如果不在 Python Shell 交互模式下,可先使用处理一下,再使用 print 打印 body print(repr(body)7. 恢复转义:转成原字符串处理过或者取消转义过的字符串,有没有办法再回退出去,变成原先的有转义的字符串呢?答案是:有。如果你使用 Python 2,可以这样:hellonworld body.decode(如果你使用 Python 3 ,可以这样: body bytes(body, utf-8).decode(unicode_escape还要区分 Python 2 和 Python 3?太麻烦了吧。明哥教你用一种可以兼容 Python 2 和 Python 3 的写法。首先是在 Python 2 中的输出 import codecs codecs.decode(body, unicode_escape)u然后再看看 Python 3 中的输出 import codecs可以看到 Pyhton 2 中的输出 有一个u,而 Python 3 的输出没有了u,但无论如何 ,他们都取消了转义。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1