一、为什么有多种定义方式

我们在刚接触python字符串的时候,可能都只知道用双引号来定义(''),但如果我们要定义的字符串中包含了双引号,那么python还能识别并输出出来吗?显然是不能的,那么如何解决这个问题呢?很简单,如果语句中包含双引号,那么我们用单引号就可以区分开了。

Python字符串的三种定义方式_单引号

二、三种定义方式

1、单引号定义法

a = '我是单引号定义法'

如上所示,这种就叫做单引号定义法,我们可以使用单引号去将内容引起来,他也是字符串的一种。


2、双引号定义法

a = "我是双引号定义法"

如上所示,同样的,双引号引起来的也是字符串,我们可以使用双引号去将内容引起来。


3、三引号定义法

a = """我是三引号定义法"""

如上所示,三引号可能我们看着很奇怪,但他也是字符串。他有一点跟单引号和双引号定义法不同,那就是他可以定义多行字符串。


注意:三引号定义法和多行注释的写法是一样的(支持多行操作),所以说我们如果使用变量接收它,那么他就是字符串,如果不用变量去接收它,他就是多行注释。


三、如何定义包含引号的字符串

现在就来说说前面提起的问题(大标题一中的标蓝部分),那么这个情况下我们该如何定义字符窜呢?比如说我要定义一个变量a,这个变量的内容是拒绝内卷",那这个引号如何写才不会报错?对于这个问题解决方法还是很多的。


比如:如果字符串本身包含双引号,那么我们就用单引号来定义字符串。


          如果字符串本身包含单引号,那么我们就用双引号来定义字符串。


          还可以使用转义字符(\)将引号转义,让它变成普通字符串。


多的不说了,下面给大家演示一下,按照上方我将分别演示包含双引号,包含单引号以及使用转义字符来解决遇到的问题。


第一种情况(包含双引号)

a = '拒绝内卷"'

 

#输出结果:拒绝内卷"

#注意:输出时需要使用print来接收变量a

简单分析一下,当字符串本身包含双引号,那么我们直接使用单引号来定义字符串即可。


第二种情况(包含多引号)

a = "拒绝内卷'"

 

#输出结果:拒绝内卷'

#注意:输出时需要使用print来接收变量a

简单分析一下,当字符串本身包含单引号,那么我们直接使用双引号来定义字符串即可。


第三种情况:使用转义字符

a = "\"拒绝内卷"

 

#输出结果:"拒绝内卷

#注意:输出时需要使用print来接收变量a

也来简单分析一下,无论字符串包含单引号或者是双引号,我们都可以使用转义字符来转义,如下图,使用转义字符转义后,被转义的字符就会变成橙色(版本不同可能有所不同),再之后的输出也不会出错。

Python字符串的三种定义方式_双引号_02



总结

本文先是讲了为什么有多种定义方式,然后紧接着讲了三种定义方式最后讲了如何定义包含引号的字符串。那么为什么会有多种定义方式呢?很简单,就是为了让大家灵活使用嘛!它的三种定义方式有:单引号定义、双引号定义、三引号定义,多引号定义(可以定义多行内容),大家根据情况使用即可。定义包含引号的字符串也很简单,当字符串本身存在双引号,那我们就用单引号来定义,相反,出现单引号,我们呢使用双引号来定义即可,在最后讲了使用转义字符来解决这一问题。