Python中单、双引号及多引号区别

Python中单、双引号及多引号区别

String字符串中的引号

  • 引号均可用于String字符串的实现
  • 注意引号在混合使用中的匹配问题
  • 多引号可以包含字符串的格式(字面量字符串在idle直接输出时,换行会以转义字符的形式显示)及注释内容的显示
  • 多引号可以减少转义字符的使用

下面是字符串的引号字面量创建:

##单引号字符的显示
>>> 'Hello Python'
'Hello Python'
>>> 'Hello ''Python'  ##字面量字符串的自动级连
'Hello Python' 
##双引号字符的显示
>>> "Hello Python"
'Hello Python'
>>> "Hello ""Python"
'Hello Python'
>>> "Hello " 'Python'
'Hello Python'
##多引号的使用
>>> '''Hello python'''
'Hello python'
>>> '''Hello''' ''' Python'''
'Hello Python'

由上面代码可以看出,引号显示的字符串是一样的。


下面说说单双引号的使用匹配问题:

>>> "Hello 'Python"
"Hello 'Python"             ##双引号中包含单引号时,会原样输出 
>>> 'Hello'Python'
SyntaxError: invalid syntax
>>> "Hello "Python"
SyntaxError: invalid syntax   
##单(双)引号,中包含自身时,会出现成引号的匹配问题,出现语法错误
>>> 'Hello \'Python'
"Hello 'Python"             ##可以通过转义来实现上面的在单引号中的引号打印
>>> 
##可以消除转义的字符r
>>> s1 = r'test\tddd'
>>> s2 = 'test\tddd'
>>> print s1
test\tddd
>>> print s2
test    ddd
>>> 

下面看看多引号和单双引号的区别:

>>> "Hello Python"
'Hello Python'
>>> '''Hello
Python'''
'Hello\nPython'    
>>> '''
Hello
Python
'''         ##IDLE中多引号字面量会打印出转义字符(换行\n)

'\nHello\nPython\n'     ##IDLE中的字面量字符串直接打印的显示结果
##通过变量接收字面量字符串后打印
##s1中的\字符为换行符(继行符),出现在每一行的末尾时,才会被认定为换行符
>>> s1 = "\
Hello,\
   Python  "
>>> s2 = '''
Hello,
   Python  '''
>>> print s1
Hello,   Python  
>>> print s2

Hello,
   Python  
>>>
##打印多行字符串时,使用单双引号的字符串需要使用转义字符换行
>>> s1 = "Hello \nPython "
>>> print s1
Hello 
Python 
>>> s2 = '''Hello
Python'''
>>> print s2
Hello
Python
>>> 

由上面代码不难看出单双引号不能直接实现打印多行,且会忽略字符串的格式,而多引号则会按照字符串的格式打印,注意区别字面量的直接打印和赋值打印效果。

>>> s1 = "\
Hello,\   
   Python #code comments"

SyntaxError: EOL while scanning string literal
>>> s2 = '''
Hello,
   Python  #code comments'''
>>> print s2

Hello,
   Python  #code comments
>>> 

上面代码中依次在双引号及多引号中添加注释,双引号会报错,而多引号会打印出注释。

注意:

  • 本文中使用的是python2.7.9,大家测试时,注意和python3的区别
  • 上面的代码中##的注释为后面编辑手动添加做说明用,#为代码中添加的注释
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值