鱼C论坛

 找回密码
 立即注册
查看: 2876|回复: 6

[已解决]有关字符串方法的密码课后习题问题

[复制链接]
发表于 2018-11-19 21:18:24 | 显示全部楼层 |阅读模式

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

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

x
看到小甲鱼老师在定义所有符号的时候用了下面的语句:
symbols = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''

请问这里为什么要用r和三引号?
最佳答案
2018-11-19 21:36:51
因为你的内部有单引号和双引号
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-11-19 21:36:36 | 显示全部楼层
本帖最后由 大黑狼 于 2018-11-19 21:39 编辑

三引号在python里面的意思类似于html里面的<pre>标签 用于保留文本格式的意思
而在前面加个r的意思应该就是防止三引号和中间的三引号被系统误读,导致最后的那个三引号失效,中间的那个三引号应该是单纯的符号意思,而前面和最后的三引号应该是一组的  把中间的整个数据包裹起来
这是python里面的解释 差不多
或者说三重引号是用来跨多行字符串的意思  即 ''' 内容 '''   
r可以用来表示原始字符串
相当于是
>>>str = r'C:\now'  
       print(str)       #其中r的作用就是防止\n被系统理解成换行的意思 目的是输出目录地址
                           如果没有r的话  输出结果就变成C:
                                                                          ow  
              我也不知道我说的对不对  如果有不对的地方请见谅     小甲鱼老师的003讲python的那个视频教程讲到了这两个知识点  不知道跟你说的那个地方一不一样作用,这个r的作用相当于就是防止代码被系统误解读 因为中间也有一个三引号
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-11-19 21:36:51 | 显示全部楼层    本楼为最佳答案   
因为你的内部有单引号和双引号
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

 楼主| 发表于 2018-11-19 21:56:25 | 显示全部楼层
大黑狼 发表于 2018-11-19 21:36
三引号在python里面的意思类似于html里面的标签 用于保留文本格式的意思
而在前面加个r的意思应该就是防 ...

嗯 我看了笔记 r是为了防止误读的 但是也没看到内容里有任何反斜杠+字母的组合呀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-11-19 21:59:12 | 显示全部楼层
塔利班 发表于 2018-11-19 21:36
因为你的内部有单引号和双引号

赞! 好像前面的r不打也不要紧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-11-20 08:16:32 | 显示全部楼层
fayzzz 发表于 2018-11-19 21:59
赞! 好像前面的r不打也不要紧

用r原始字符串的话,symbols会转义掉单引号和双引号,老师这么做只是为了防止bug,虽然三引号也可以使用。虽然不带r确实不要紧,但是我想老师想表示的是一种严谨的思想。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-11-21 15:57:09 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-23 01:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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