零基础入门学习Python(第2版)
上QQ阅读APP看书,第一时间看更新

3.2 字符串

到目前为止,我们所认知的字符串就是引号内的一切东西。字符串也称为文本,文本和数字是截然不同的。

如果直接让两个数字相加,那么Python会直接将数字相加后的结果告诉你:

     >>> 5 + 8
     13

但是如果在数字的两边加上了引号,就变成了字符串的拼接,这正是引号带来的差别:

     >>> '5' + '8'
     '58'

要告诉Python你在创建一个字符串,就要在字符两边加上引号,可以是单引号或双引号,Python表示在这一点上不挑剔。但必须成对,不能一边用单引号,另一边却用双引号,这样Python就不知道你到底想干嘛了:

     >>> 'Python I love you!"
     SyntaxError: EOL while scanning string literal

那如果字符串内容中需要出现单引号或双引号,怎么办?

     >>> 'Let's go'
     SyntaxError: invalid syntax

像上面这样写,Python会误解你的意思(认为'Let'是一个字符串,而s go'是另一个不完整的字符串),从而产生错误。

有两种方法来改进。第一种比较常用,就是使用转义符号(\)对字符串中的引号进行转义,这样Python就知道这个引号是要直接输出的:

     >>> 'Let\'s go'
     "Let's go"

还有一种方法,就是利用Python既可以用单引号也可以用双引号表示字符串这一特点,只要用上不同的引号表示字符串,那么Python就不会误解你的意思啦。

     >>> "Let's go"
     "Let's go"