上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"