python中单引号和双引号的区别

Python055

python中单引号和双引号的区别,第1张

在Python中,单引号双引号功能一样,都可以表示字符串,也都可以起到转义的功能。

例如:

print('-\t-\\-\'-%-/-\n')

print("-\t-\\-\'-%-/-\n")

他们显示结果都是一样的:都显示转义后的字符:

- -\-'-%-/-

其实在转义这一点上,三个引号的功能也是一样的,例如:

print('''-\t-\\-\'-%-/-\n''')

print("""-\t-\\-\'-%-/-\n""")

同样都会显示上面的结果。

但是,三引号的独特之处在这里:可以显示多行

例如:

# 三单引号(''')

print('''i

love

you''')

#三双引号(""")

print("""I can print '''"""")

print("""i

love

you""")

上面两段代码的打印效果是一样的,都显示:

i

love

you

所以总结一下就是:

单引号和双引号是等效的,如果要换行,那么需要使用符号\。单引号里面不能再加单引号,但是可以加\或者是双引号进行转义输出。双引号里面不能再加双引号,但是可以加\或者是单引号进行转义输出。

三引号括起来的字符串可以直接进行换行,并且可以包含注释。

单引号和双引号用法差不多,Python不做明显区分,大部分情况下是一样的(比如"1"=='1'甚至"1" is '1'的返回值都为True)。但是有的时候最好用双引号,因为英文的'也可以用于单词,比如I'm等。中文就无所谓了。

这位答主对三引号的解释不太对。三引号确实可以用作多行注释,因为它不赋予给任何一个变量,Python运行时就是看一眼但对它啥都不干,它作为注释的好处就在于可以避免#需要每行都打的问题。

但是三引号也可以作为多行字符串使用。比如以下代码:

string="""123

abc

αβγ"""

print(string)

输出这个字符串的时候你就会得到:

123

abc

αβγ

说明它不一定非要是注释。三引号的空行会被转化为"\n",即换行符。它的意义就在于更好地在一行内表示一个字符串。比如上面加粗的代码就可以表示为string="123\nabc\nαβγ"

1. 单引号和双引号用法都是一样的,但是如果字符串里有相同的字符时要使用\进行转义

举例:

1) print 'hello'

2) print "hello"

1和2,结果都是hello

3) print 'hell\'o'

4) print "hell'o"

3和4,结果都是hell'o

5) print 'hell"o'

6) print "hell\"o"

5和6,结果都是hell"o

2. 三引号与他们不同之处:“所见即所得”,对于一段html或xml格式的字符串时用三引号更直观点(此时要用单引号或双引号时候需要进行转义)

如:

print '''

hello'

world"

'''

结果是

hello'

world"