![]() |
5.2 认识转义字符 |
字符串中有一些特殊的字符无法从键盘输入或者该字符已经被定义用作其他用途,如果要在字符串中使用这些字符,就必须加上转义字符。例如,以单引号引起来的字符串,如果在字符串内容中又遇到了单引号字符,就必须以“\”进行转义,避免被误认为字符串结束的单引号。转义字符通常使用反斜线“\”,请看以下实例:
str1 = 'it\'s raining.'
当解释器遇到反斜线时,就知道下一个字符必须另外处理,不会将它视为字符串结尾的单引号。另外,还有一些换行字符、制表符等无法由键盘输入,也可以用转义字符来处理。表5-1所示是常用的转义字符。
表5-1
转义字符“\”本身还有另一个用途,就是当程序代码太长时,只要在该行末端加一个反斜线,可以换行继续编写。例如,以下程序语句中,在print语句中加上转义字符“\”就可以换到下一行继续编写了。
a = "Beautiful" b = len(a) print("{}有{}个字符".\ format(a, b))
下面看一个实现转义字符的范例程序。
【范例程序:escape01.py】显示特殊字符
01 str1 = "Never say \tNever!\nNever say \"Impossible!\"\u2665" 02 print(str1) 03 str2 = "Never say Never\b\b\b\b\b" 04 print(str2) 05 str3 = "c:\\temp" 06 print(str3) 07 str4 = r"c:\temp" 08 print(str4)
程序的执行结果如图5-2所示。
图5-2
程序解析:
·第1行程序使用了“\t”制表符、“\n”换行符以及“\u2665”显示爱心符号。
·第3行程序使用了“\b”转义字符,所以最后的“Never”被删除了。
·第5行程序要打印输出“c:\temp”,然而其中的字符“\t”是转义字符,所以必须再加上“\”转义字符才能正确输出。
·第7行程序同样是要输出“c:\temp”,但不使用转义字符,而是在字符串前加上“r”的前导符,如此一来,就可以按照字符串的原貌输出。