ps:以下内容均是笔者通过阅读网上的博文作出的个人总结,如有不足,希望各位不吝赐教。
内容大纲:
- 单引号(’)与双引号(")的用法比较
- (单引号、双引号)与(三单引号、三双引号)的用法比较
- 三单引号(’’’)与三双引号(""")的用法
1. 单引号(’)与双引号(")的用法比较 :
1). 二者通常用于单行字符串的表示,也可通过使用\n
换行后表示多行字符串
2). 使用单引号(’)表示的字符串中可以直接使用双引号而不必进行转义,使用双引号表示的字符串同理。
其实一开始学习python的时候一直有一个疑问:为什么python需要那么多种字符串表示方式? 答案就是为了体现python的人性化。
请看上图中的str1
与str3
:字符串中避免不了会出现单引号或双引号,或者二者同时出现在同一个字符串中,通常我们需要用反斜杠\
进行转义。当字符串中大量出现需要转义的单引号或双引号时,会给我们带来诸多不便,所以python提供的解决思路就是以上给出的结论。
2. (单引号、双引号)与(三单引号、三双引号)的用法比较 :
1). (单引号、双引号)表示多行时需要添加换行符\n
。
2). (三单引号、三双引号)表示多行时无需使用任何多余字符
3). (三单引号、三双引号)中可直接使用(单引号、双引号)而无需使用反斜杠\
进行转义
前面提到,(单引号、双引号)通常用于表示单行字符串的表示,但也可以通过使用\n
换行后表示多行字符串,但是字符串中换行符过多并不方便,而且有时不一定输出想要的结果。如图:
从图中可知,str0
与str1
的结果是相同的,而str2
的输出结果(其中的反斜杠\
用于转义换行符)却不是我们想要的。再来看看(三单引号、三双引号)的多行字符串表示:
可以看出,无需任何多余字符就可以进行多行字符串的表示,并且在(三单引号、三双引号)中可以直接使用(单引号,双引号)而无需转义。
需要注意的是:(单引号,双引号)表示多行字符串,字符串中的任何字符包括隐藏的换行符及制表符等在内都是字符串的一部分,其实这也就是(三单引号、三双引号)表示多行字符串时无需再添加换行符\n
的原因。
3. 三单引号(’’’)与三双引号(""")的用法 :
1). 二者通常用于表示多行字符串以及多行注释
2). 二者表示的字符串中可以输出#
后面的内容
关于多行字符表示就不再做示范,先看看三引号的注释作用:很简单,不再多说
三引号表示的字符串中可以有效输出#
后的内容,如图:
输出效果为: