Python单引号、双引号和三双引号的区别

python字符串通常有单引号('...')、双引号("...")、三引号("""...""")或('''...''')包围,三引号包含的字符串可由多行组成,一般可表示大段的叙述性字符串。在使用时基本没有差别,但双引号和三引号("""...""")中可以包含单引号,三引号('''...''')可以包含双引号,而不需要转义

如: s1 = "hello,world" 如果要写成多行,那么就要使用\ (“连行符”)吧,

如:s2 = "hello,\ 

                   world" 

s2与s1是一样的。如果你用3个双引号的话,就可以直接写了,

如:s3 = """hello, 

world,  

hahaha.""",

那么s3实际上就是"hello,\nworld,\nhahaha.", 注意“\n”,所以,如果你的字符串里\n很多,你又不想在字符串中用\n的话,那么就可以使用3个双引号。而且使用3个双引号还可以在字符串中增加注释,

如:s3 = """hello, #hoho, this is hello, 在3个双引号的字符串内可以有注释哦 

world, #hoho, this is world 
hahaha.""" 

这就是3个双引号和1个双引号表示字符串的区别了,3个双引号与1个单引号的区别也是和这个一样的,

当字符串需要加入引号时,可采用单引号与双引号互相嵌套使用

例如:print 'test "'"test "'"' -->> test "test"

            "test '"'test "'"   -->> test 'test'

实际上python支持单引号是有原因的,下面我来比较1个单引号和1个双引号的区别。当我用单引号来表示一个字符串时,如果要表示 Let's Go 这个字符串,必须这样: s4 = 'Let\'s go',注意没有,字符串中有一个',而字符串又是用'来表示,所以这个时候就要使用转义符 \ (\,转义符应该知道吧), 如果你的字符串中有一大堆的转义符,看起来肯定不舒服,python也很好的解决了这个问题,

如:s5 = "Let's go" 

这时,我们看,python知道你是用 " 来表示字符串,所以python就把字符串中的那个单引号 ' , 当成普通的字符处理了,是不是很简单。对于双引号,也是一样的,下面举个例子
s6 = 'I realy like "python"!'这就是单引号和双引号都可以表示字符串的原因了。