我收到“意外的意外缩进错误”

时间:2019-06-17 14:23:23

标签: python python-2.7 operating-system

我正在创建一个程序,最近我开始了异常处理。该程序可以正常运行几次,但是现在每次启动时我都会得到一个IndentationError,这很奇怪,因为它以前运行良好。它很大,所以我只包含该程序的一个片段。让我知道您是否需要整个东西。

使它起作用的唯一方法是删除命令

我在命令之间包括了几行,以便您可以更清晰地识别它们。问题命令在中间。

elif 'python' in cmd:
    pythonProgram = cmd.split(' ')[1]
    execfile(pythonProgram)

elif 'cd' in cmd:
    desired_directory = cmd.split(' ')[1]
    if desired_directory == "..":
        os.chdir('..')
    else:
        try:
            os.chdir(desired_directory)
            print "'%s' Is not a valid directory!" % desired_directory

elif 'ver' in cmd:
    print"JDOS_2", currentVersion

我还尝试散列较低的elif,并在程序中的下一个elif语句中得到相同的错误。

这似乎是一个简单的问题,我很可能会监督一些事情,但是elif命令的缩进是相同的。这是错误输出。

  File "/Users/#######/PycharmProjects/untitled/JDOS/SYS64/jdosos.py", line 64
    elif cmd == "ver":
    ^
IndentationError: unexpected unindent

Process finished with exit code 0

而且我在程序中乱七八糟地混合使用空格和缩进没有任何问题。

感谢帮助。

1 个答案:

答案 0 :(得分:0)

有点晚了,但是我需要一个匹配的except块来配合try参数。

这是固定代码,可以正常工作。

elif 'cd' in cmd:
    desired_directory = cmd.split('cd ')[1]
    if desired_directory == "..":
        os.chdir('..')
    else:
        try:
            os.chdir(desired_directory)
        except OSError as e:
            print("'%s' Is not a valid directory!" % desired_directory)