字符串的定义

在python中创建一个字符串,必须用引号括起来。可以用单引号括起来,也可以用双引号。

比如下面代码,字符串的拼接

a = '12'
b = '34'
print(a+b)

py中的字符串(一)

像上面代码,变量 a = '12'  ,'12' 被单引号括起来,这样的说明 '12' 是一个字符串,而不是一个数字。

同理,'34' 也是一个字符串,所以,a和b相加的结果是两个字符串的拼接,而不是数值的运算。

也可以用双引号把字符串括起来。

a = "12"
b = "34"

这样的定义方法和上面的定义方法结果上是一样的

但是切记,不能双引号和单引号混合用去定义!

a = "12'

py中的字符串(一)

比如这样,前面一个双引号,后面一个单引号去定义,运行的时候就会出错。

转义字符

什么是转义字符?在解答这个问题之前先思考一个问题:

根据上面字符串的定义规则,字符串是两个引号之间的字符(我们这里用单引号)。

但如果我们要定义的字符串中,有很多单引号呢?python能很智能的知道我们要定义的是什么吗?

还不明白没关系,举个例子。

我们定义一个字符串为  123'23 ,也就是23和23之间有一个引号,按照上面的定义规则,应该是这样的。用引号把它括起来。

a = '123'23'

然后我们运行试试看:

py中的字符串(一)

出错了!~!这是因为在python的机制中,在编译一句代码的时候,当遇到一个引号后,会把和下一个引号和它之间的内容是为一个字符串。

也就是说,第一个引号和第二锅引号之间的 123 被视为一个字符串,后面的 23' 被视为多余的内容,所以报错了。

这和我们想的不一样,我们想要的是一个字符串中间有一个引号,怎么办呢?

 

这就要用到我们的转义字符-反斜杠 '\'

(注意反斜杠和除号的区别)

反斜杠能把一个有特殊意义的字符转变成普通的字符。

举个例子:

a = '123\'23'

在第二个单引号的前面加上我们的转义字符反斜杠,再次运行试试看~

py中的字符串(一)

和我们需要的一样,打印出来的字符床中间有一个单引号。

也就是说,反斜杠把一个有特殊意义的字符转变成普通的字符,

这一句代码中,反斜杠把它后面的一个单引号转义成普通的字符,这样第一个引号就不会和它配对

这样一来,第一个引号就和第三个引号配对了!我们就得到了想要的字符串。

值得一提的是:作为转义字符的反斜杠是不会被打印出来的。

那如果我们要打印一个反斜杠该怎么办呢??

思考一下,具体怎么办下一篇文章详细讲解~~


Simple And Clear