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

请问str(re.subn(r"\w", "hi", s)[1])中的[1] 有什么用啊?

请问str(re.subn(r"\w", "hi", s)[1])中的[1] 有什么用啊?

慕容森 2022-07-14 18:11:09
re.findall(r"\b\w+\b", s)新手学习python,谢谢了。str(re.subn(r"\w", "hi", s)[1])中的[1] 有什么用啊?import res = "1abc23def45"print(str(re.subn(r"\w", "hi", s)[1]))print(str(re.subn(r"\w", "hi", s)))结果:11('hihihihihihihihihihihi', 11)
查看完整描述

3 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

在Python的string前面加上‘r’, 是为了告诉编译器这个string是个raw string,不要转意backslash '\' 。 例如,\n 在raw string中,是两个字符,\和n, 而不会转意为换行符。由于正则表达式和 \ 会有冲突,因此,当一个字符串使用了正则表达式后,最好在前面加上'r'。

例:r"\n\n\n\n\n\n”

作用:声明后面的字符串是普通字符串

特殊字符串中含有:转义字符 \n \t 什么什么的

用途:一般用在 正则表达式、文件绝对地址

1,正则表达式:

2、系统路径

这样就不用专门的去处理引号之中的特殊字符了


查看完整回答
反对 回复 2022-07-18
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

Python中字符串前面加上 r 表示原生字符串,
与大多数编程语言相同,正则表达式里使用"\"作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符"\",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\\"表示。同样,匹配一个数字的"\\d"可以写成r"\d"。有了原生字符串,你再也不用担心是不是漏写了反斜杠,写出来的表达式也更直观。

查看完整回答
反对 回复 2022-07-18
?
湖上湖

TA贡献2003条经验 获得超2个赞

re是python里的正则表达式模块。findall是其中一个方法,用来按照提供的正则表达式,去匹配文本中的所有符合条件的字符串。返回结果是一个包含所有匹配的list。
[1] 就是列表中的[1]啊

查看完整回答
反对 回复 2022-07-18
  • 3 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信