unindent与任何外部缩进级别都不匹配。这是我老师给我的代码

时间:2017-09-01 19:14:21

标签: python

我正在尝试为课程执行我的项目,并在尝试运行时不断收到此错误。

  

尝试:

     

^ IndentationError:unindent与任何外部缩进都不匹配   水平

这是我的代码:

author=''
try:
    fh = open( sys.argv[0], encoding="utf8")
    for line in fh:
        m = re.search('# *AUTHOR: *([\w\-]+ *[\w\-]+)', line)
        if m is not None:
            author = m.group(1)
except( IOError, OSError) as err:
    print(err)
    return ''
finally:
    if fh is not None:
        fh.close()
return author.lower()

1 个答案:

答案 0 :(得分:0)

正如人们所说,你不能拥有一个条件/循环/期望或任何类型的块后面没有任何东西。 如果你想捕获错误,但没有做任何事情,只需添加pass(当然有正确的缩进)。

author=''
try:
    fh = open( sys.argv[0], encoding="utf8")
    for line in fh:
        m = re.search('# *AUTHOR: *([\w\-]+ *[\w\-]+)', line)
        if m is not None:
            author = m.group(1)
except( IOError, OSError) as err:
    # Do something here or pass
    pass

此外,除了评论之外什么都不添加就等于什么都不添加。因此,这会给你同样的错误:

except( IOError, OSError) as err:
    # I want to do nothing