AttributeError:'NoneType'对象没有属性'group

时间:2019-09-23 14:40:26

标签: python python-3.x

我想提取NUMERO之后的数字,它适用于一个句子,但是我有一个包含更多句子的数据框,所以我使用了一个循环,但它不起作用:

一句话:

b="jghjghjgh : 1 hjggjhgjh: 0  NUMERO : 1544kkk454 jgjhjgjgjdgstrythghgjh "   
m = re.search('NUMERO : (\S+)', b , re.IGNORECASE)
m.group(1) 

使用循环

for f in identifiant["det"] :
        f=repr(f)
        m = re.search('NUMERO : (\S+)', f, re.IGNORECASE)
        m.group(1)

我收到此错误:

Traceback (most recent call last):

  File "<ipython-input-136-1f5f32a53ddb>", line 4, in <module>
    m.group(1)

AttributeError: 'NoneType' object has no attribute 'group'

有任何提示吗?

1 个答案:

答案 0 :(得分:0)

您的错误意味着mNone,当正则表达式搜索未找到任何内容时就会发生。

您的第一个代码示例有效。在您的第二个示例中,错误表明您的正则表达式搜索失败,但是由于我们不知道您的identifiant变量所保存的内容,因此无法说明原因。

要检查出什么问题,请添加调试行:

for f in identifiant["det"] :
    f=repr(f)
    m = re.search('NUMERO : (\S+)', f, re.IGNORECASE)
    if not m:
        print(f)