江晓夜 发表于 2020-10-20 10:17:31

python小白求助

import re
ss = 'I love you,dou you?'

res = re.search(r'(\w +)(,)+',ss)
print(res.group(1))

为什么会出现这种问题?怎么改?

Traceback (most recent call last):
File "E:/文件/研究生/Python/程序/re.py", line 5, in <module>
    print(res.group(1))
AttributeError: 'NoneType' object has no attribute 'group'

bonst 发表于 2020-10-20 11:57:30

不要有空格

hrp 发表于 2020-10-20 11:59:35

本帖最后由 hrp 于 2020-10-20 12:04 编辑

re.search没有匹配到任何字符的时候会返回None,None.group()当然就报错了。所以一般res.group()之前都会先检查res是否为None,不为None再res.group()。
这里是你的表达式写错了(多了个空格),所以没匹配到任何信息,我不知道你想匹配什么。
import re
ss = 'I love you,dou you?'

res = re.search(r'(\w+)(,)+',ss)
if res:
    print(res.group(1))
else:
    print('没有匹配到字符。')
页: [1]
查看完整版本: python小白求助