Python 属性错误:'NoneType怎么解决?

2021-07-22 14:14:02 浏览数 (5048)

今天W3Cschool为大家带来的是Python 属性错误:'NoneType怎么解决,希望能对各位正在学习python的朋友有所帮助。

我是Python扩展Regex的新手。我试图做一个迷你python Regex项目,我遇到了一个问题。我只是想查个电话号码。如果你输入正确的数字,你会收到“thank you”,但如果你输入随机数字(不是电话号码)或随机字母,你会收到“Try again”。

问题是,如果我输入一个字母,然后我收到一个AttributeError: 'NoneType'对象没有属性'group '。

这是一个解决方案:

import re
import time


print('Welcome, you have won 1 million dollars! Please verify your phone number!')
time.sleep(2) #sleep
content = input('Please enter your number:')
# content = "111-111-1111"
numberRegex = re.compile(r'\d\d\d-\d\d\d-\d\d\d\d')
result = numberRegex.search(content)
if result is not None:
    time.sleep(3) #sleep
    if result.group() == content:
        print('thank you')

    if result.group() != content:
        print('try again')
else:
    print('try again')

另一种解决方案是尝试/捕获块处理异常。

我猜它永远不会得到代码的这一部分:

if result.group() != content:
        print('try again')

但我离开了它现在,因为我不是真的熟悉蟒蛇的regex图书馆