当前位置:首页>python>Python教程(40)字符串里的“隐形符号”—— 转义字符

Python教程(40)字符串里的“隐形符号”—— 转义字符

  • 2026-10-11 06:12:26
Python教程(40)字符串里的“隐形符号”—— 转义字符

你好,我是雨霖八珞,同名B站UP主。关注合集不迷路。以下内容为个人教学,真诚分享,欢迎交流。

上篇文章我们初步认识了字符串,知道字符串是由引号括起来的一段字符,但在实际使用过程中我们还会碰到一些莫名其妙的情况。


几个“翻车”案例

先看第一段代码。猜猜它会输出什么?

按道理来说,应该会输出双引号里面的文件路径。

但实际运行结果却是报错:

是不是很意外?再看第二段代码

有了第一段代码的教训,你以为它也会报错。

但实际运行结果又是对的。
最后看第三段代码
到底是会出错,还是会直接输出c:\nell\hetao
实际运行后结果是:

怎么会这样?\n哪里去了?

这几个例子是不是让你瞬间觉得非常莫名其妙?别慌,其实都是转义字符搞的鬼。

什么是转义字符?

在字符串里,只要出现了反斜杠 “\”,你就要小心了。

反斜杠 “\” 不是普通的符号,它是一个 “转换键”,让后面的字符改变原本的含义,所以才叫转义字符。

当 Python 看到 \ 时,它会想:“后面这个字母有特殊含义,我要特殊处理。”

但要注意: 不是所有 \ 加字母都有特殊含义。只有以下特定的几个组合才是转义字符。

前五个最常用,后面四个了解即可,如果以后碰到了再来查阅即可。

回到翻车的地方

再来看第一段代码

Python 看到 \U,以为是要转义成Unicode字符,结果后面跟的不是8位数字,于是报错。注意:\A,\D都不是转义字符,会原样输出。


拓展:

\U 后面跟8个十六进制数字,用来表示一个Unicode字符。
举个例子:

至于什么叫Unicode字符,什么叫十六进制数字,以后会单独写文章解释。这里只需要了解\U是转义字符即可。


第二段代码

\h 不是转义字符,会原样输出,所以输出正常

第三段代码

Python 看到\n,以为是要转义成换行符,所以输出换行,\h 不是转义字符,会原样输出。所以才会输出

转义字符常用的场景

理解了原因,我们才能知道怎么去解决它。

场景一:文件路径

文件路径里有很多反斜杠,比如 C:\Users\Admin\Desktop。

解决方案:用两个反斜杠,或者在字符串前面加一个 r:

推荐用第二个,r 表示“原始字符串”,里面的所有反斜杠都当作普通字符,不再转义。

场景二:输出带引号的文字

看到没,字符串里有双引号,本来应该用单引号括起来,但如果将里面的双引号通过反斜杠转义了,就不会出错了。

场景三:让文字换行或对齐

运行结果如下:
通过今天的学习,以后只要出现了反斜杠,你就要多一个心眼,是不是要转义了。

本公众号内容均为原创。如需转载或引用,请先联系我。谢谢你的尊重。

觉得不错的话,伙伴们记得关注、在看、转发和点赞哈!

最新文章

随机文章