为了账号安全,请及时绑定邮箱和手机立即绑定

python最基础知识

不是说r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串,那为什么下面语句可以实现

print r'''"To be, or not to be": that is the question.

 Whether it's nobler in the mind to suffer.'''

 

其中不是有“与it's中的'

正在回答

2 回答

是的。r''是不能表现多行字符的。按我的理解,r的意思都是''中的字符为一般字符,不存在转义的情况,也就无法用\n来换行以表示多行字符,而带有'或”存在,会与开头的‘产生歧义。如print 'i'm good,thank you.',按照我们的思维,应该打印出i'm good ,thank you.但电脑不会这样打印,开头的‘和i'm中的’还有结尾的那个',到底那两个构成r'',哪两个''中的内容为要打印的语句。类似的,字符中"的其中一个'也会与开头的'形成歧义。

至于说为什么r''' '''为什么可以带it's,因为it's中只有一个',无法与开头的'''形成''' '''结构而导致歧义,所以就可以实现喽。"也是一样,凑不出三个'。

我刚上完课不到10分钟,知识不全,也很啰嗦。码字不容易,有什么不对的地方请见谅!

2 回复 有任何疑惑可以回复我~
#1

usereg 提问者

非常感谢你
2016-10-17 回复 有任何疑惑可以回复我~

r'...' 和 r'''...'''中的字符不能转义,里面的 ' 只是个字符

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

python最基础知识

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信