我是python的新手,我正在使用pycharm.when我在我的python中运行此代码空闲运行但是当我在我的pycharm中使用此代码时,它显示错误,如此
我的代码是
import sys
import re
for line_string in iter(sys.stdin.readline,''):
line = line_string.rstrip()
date = re.search(r'date=[0-9]+\-[0-9]+\-[0-9]+', line)
date = date.group()
print date
第8行,在< module>中 date = date.group()
AttributeError:' NoneType'对象没有属性' group'
答案 0 :(得分:2)
re.search()
在无法匹配模式时返回None
。在使用之前,您必须始终检查返回的值:
result = re.search(r'date=[0-9]+\-[0-9]+\-[0-9]+', line)
if result is not None:
date = result.group()
print date
else:
# Do some error recovery here
答案 1 :(得分:-2)
import sys
import re
for line_string in iter(sys.stdin.readline,''):
line = line_string.rstrip()
date = re.search(r'date=[0-9]+\-[0-9]+\-[0-9]+'.decode('utf-8'), line)
date = date.group()
print date
以这种方式工作。表达式包含非拉丁字符,因此通常会失败。您必须解码为Unicode并使用re.U(Unicode)标志。