鱼C论坛

 找回密码
 立即注册
查看: 1047|回复: 2

第014讲动动手题有疑惑

[复制链接]
发表于 2018-5-1 11:04:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问:
symbols = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
想问一下r后面的三引号还有末尾的三引号有合作用?是多行字符串的意思么?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-5-1 13:22:21 | 显示全部楼层
1、r是用来表示不转义,使用真实字符,字符串里面如果出现“\n”,则不执行换行,而是将"\n"以字符形式显示。
2、三引号,可以是3个单引号对,也可以是3个双引号对。表示允许一个字符串跨多行输入。
(1)其中字符之间要是换行继续多行输入,用了键盘“enter”,它还自动加个换行
  1. >>> a='''你好!
  2. 他好,
  3. 大家好'''
  4. >>> a
  5. '你好!\n他好,\n大家好'
  6. >>> print(a)
  7. 你好!
  8. 他好,
  9. 大家好
  10. >>> a="""你好!
  11. 他好,
  12. 大家好!"""
  13. >>> a
  14. '你好!\n他好,\n大家好!'
  15. >>> print(a)
  16. 你好!
  17. 他好,
  18. 大家好!
  19. >>> a='''你好!\n
  20. 他好\n,
  21. 大家好\n'''
  22. >>> a
  23. '你好!\n\n他好\n,\n大家好\n'
  24. >>> print(a)
  25. 你好!

  26. 他好

  27. 大家好
复制代码


(2)要是想多行输出,不因为换行而换行,可以用"\"连接
  1. >>> a='''111111111111222222\
  2. 345\
  3. 678'''
  4. >>> a
  5. '111111111111222222345678'
  6. >>> print(a)
  7. 111111111111222222345678
  8. >>> a='''111111111111222222
  9. 345
  10. 678'''
  11. >>> a
  12. '111111111111222222\n345\n678'
  13. >>> print(a)
  14. 111111111111222222
  15. 345
  16. 678
复制代码


(3)显示用r与不用r的区别
  1. >>> b=r'''123\n455
  2. 678
  3. 90'''
  4. >>> b
  5. '123\\n455\n678\n90'
  6. >>> print(b)
  7. 123\n455
  8. 678
  9. 90
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-1 14:23:39 From FishC Mobile | 显示全部楼层
两者都可以显示原始字符串,两者一起使用可以保证后面的字符串肯定是原始的,如果仅用一种,可能在某些特定情况下出现编译错误
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-29 21:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表