前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【基础教程】Python转义字符及用法

【基础教程】Python转义字符及用法

作者头像
matinal
发布2020-11-27 17:28:45
1.1K0
发布2020-11-27 17:28:45
举报
文章被收录于专栏:SAP Technical

ASCII 编码为每个字符都分配了唯一的编号,称为编码值。在 Python 中,一个 ASCII 字符除了可以用它的实体(也就是真正的字符)表示,还可以用它的编码值表示。这种使用编码值来间接地表示字符的方式称为转义字符(Escape Character)。

转义字符以\0或者\x开头,以\0开头表示后跟八进制形式的编码值,以\x开头表示后跟十六进制形式的编码值,Python 中的转义字符只能使用八进制或者十六进制。具体格式如下:

\0dd \xhh

dd 表示八进制数字,hh 表示十六进制数字。 ASCII 编码共收录了 128 个字符,\0\x后面最多只能跟两位数字,所以八进制形式\0并不能表示所有的 ASCII 字符,只有十六进制形式\x才能表示所有 ASCII 字符。 我们一直在说 ASCII 编码,没有提及 Unicode、GBK、Big5 等其它编码(字符集),是因为 Python 转义字符只对 ASCII 编码(128 个字符)有效,超出范围的行为是不确定的。

字符 1、2、3、x、y、z 对应的 ASCII 码的八进制形式分别是 61、62、63、170、171、172,十六进制形式分别是 31、32、33、78、79、7A。下面的例子演示了转义字符的用法:

  1. str1 = "Oct: \061\062\063"
  2. str2 = "Hex: \x31\x32\x33\x78\x79\x7A"
  3. print(str1)
  4. print(str2)

运行结果:

Oct: 123 Hex: 123xyz

注意,使用八进制形式的转义字符没法表示 xyz,因为它们的编码值转换成八进制以后有三位。 对于 ASCII 编码,0~31(十进制)范围内的字符为控制字符,它们都是看不见的,不能在显示器上显示,甚至无法从键盘输入,只能用转义字符的形式来表示。不过,直接使用 ASCII 码记忆不方便,也不容易理解,所以,针对常用的控制字符,C语言又定义了简写方式,完整的列表如下。

转义字符

说明

\n

换行符,将光标位置移到下一行开头。

\r

回车符,将光标位置移到本行开头。

\t

水平制表符,也即 Tab 键,一般相当于四个空格。

\a

蜂鸣器响铃。注意不是喇叭发声,现在的计算机很多都不带蜂鸣器了,所以响铃不一定有效。

\b

退格(Backspace),将光标位置移到前一列。

\\

反斜线

\'

单引号

\"

双引号

\

在字符串行尾的续行符,即一行未完,转到下一行继续写。

转义字符在书写形式上由多个字符组成,但 Python 将它们看作是一个整体,表示一个字符。 Python 转义字符综合示例:

  1. #使用\t排版
  2. str1 = '网站\t\t域名\t\t\t年龄\t\t价值'
  3. str2 = 'C语言中文网\tc.biancheng.net\t\t8\t\t500W'
  4. str3 = '百度\t\twww.baidu.com\t\t20\t\t500000W'
  5. print(str1)
  6. print(str2)
  7. print(str3)
  8. print("--------------------")
  9. # \n在输出时换行,\在书写字符串时换行
  10. info = "Python教程:http://c.biancheng.net/python/\n\
  11. C++教程:http://c.biancheng.net/cplus/\n\
  12. Linux教程:http://c.biancheng.net/linux_tutorial/"
  13. print(info)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/05/08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档