Python学习笔记 - 转义符太简单,但却很容易出错,常常被人忽略

转义符,由一个 后面加一个字母或符号组成的具有特殊意义的符号,放在字符串里可以控制字符串的输出格式。仅此而已,所以我一直没重视,今天偶尔深入一下,发现这里面的小细节还不少,记一下笔记吧!

Python转义符


【 和 r 】: ,NewLine,新行的意思;r,Return,回车的意思

为什么要把这两个转义符放到一起说呢?因为原来我一直认为回车就是换行,这两个转义符根本就是同一个意思!这是受了电脑的影响。在电脑文本编辑页面,敲键盘的回车键就是换行,但是python转义符里面所说的,其实指的是老式英文打字机的换行和回车。过去的英文打字机是机械式的,带着纸张来回移动的部件叫纸车,回车杆就是负责让纸车回到纸张第一个位置,所以叫回车,但并不换行。而换行杆就是让纸张向上移动一次,达到换行的目的。

弄清了换行和回车的含义,下面在pycharm里输入两行代码,然后看看执行效果:

print('hello
world')
print('hellorworld')

输出结果:

hello
world
world

前两行是转义符 的效果,两个字符串在两行输出;第三行是r的效果,首先输出了字符串hello,然后遇到回车转义符,光标移到了行首位置,再输出world,所以覆盖了hello字符串。


【 】:Tab,制表位的意思,相当于按下键盘的Tab键

在打印字符串时,如果遇到转义符 ,则跳到下一个制表位再继续打印。如果对制表位Tab没有特殊定义,默认是4个字符是一个制表位。一直以为转义符 就是加4个空格,结果仔细研究发现还是存在问题。下面看如下代码:

print('hello	world')
print('helloo	world')
print('hellooo	world')
print('helloooo	world')

再看看输出结果:

hello   world
helloo  world
hellooo	world
helloooo    world

第一行两个字符串之间有3个空格,第二行是2个空格,第三行是1个空格,第四行是4个空格。为什么同样使用 转义符,而每行输出的字符串之间不全是4个空格呢?

【解释】这是因为python将转义符 前边的字符全都要统计到制表位里,先看第一条语句中转义符 前边的字符串hello,前边4个字符hell正好占了一个制表位,还剩下一个字符o,这时执行转义符 跳到下一个制表位,是表示包含了字符o的4个字符宽度,也就是在字符o后面加3个空格补齐一个制表位。同理,第二行语句去掉前边的一个制表位,剩余2个字符,那么输出时就加2个空格,第三行输出时加1个空格,而第四行转义符前边正好是8个字符,也就是2个完整的制表位,这时执行转义符 就是跳了一个完整的制表位——4个空格![汗][汗][汗]


【 ' 和 " 】强制输出一个反斜杠、单引号和双引号

应用场景:

open('D:python项目文件图形界面note.txt')

路径里如果只使用一个反斜杠 ,系统默认为 跟后面的字符是转义符,那么这个路径就全乱套了。

print('I'm Tom')

输出结果是:I'm Tom

展开阅读全文

页面更新:2024-04-25

标签:斜杠   打字机   英文   空格   字符串   语句   路径   纸张   字符   效果   简单

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top