Python 3.x 我定义了一个函数(使用python),当我使用它时,它会返回IndentationError

Python 3.x 我定义了一个函数(使用python),当我使用它时,它会返回IndentationError,python-3.x,Python 3.x,这是马车: 当我尝试调用该函数时,我得到: 当我在终端中分别运行相同的代码时,它运行正常。为什么?如何修复此错误?欢迎使用堆栈溢出 首先,对阅读你的问题的人要有所帮助:总是直接在问题中复制粘贴你的相关代码(这次我为你做了这件事;)) 关于你的问题,我想你在第29行有一个拼写错误: list_i = os.listdir(path1) 结尾没有冒号“:” 下面的代码适用于我(尽管您没有告诉我您的代码应该做什么:我只是通过阅读来猜测): 试试看它是否有效 所有代码都需要直接作为文本发布在这里。 F

这是马车:

当我尝试调用该函数时,我得到:


当我在终端中分别运行相同的代码时,它运行正常。为什么?如何修复此错误?

欢迎使用堆栈溢出

首先,对阅读你的问题的人要有所帮助:总是直接在问题中复制粘贴你的相关代码(这次我为你做了这件事;))

关于你的问题,我想你在第29行有一个拼写错误:

list_i = os.listdir(path1)
结尾没有冒号“:”

下面的代码适用于我(尽管您没有告诉我您的代码应该做什么:我只是通过阅读来猜测):


试试看它是否有效

所有代码都需要直接作为文本发布在这里。
File "build_data.py", line 25
   path_list.append(pathh_temp)
                              ^
IndentationError: unindent does not match any outer indentation level
list_i = os.listdir(path1)
def sort_image(path1,path2=None):
    import os
    import shutil
    path_list=[]
    if path2 is None:
        for i in range(1,len(os.listdir(path1))+1):
            pathh_temp = path1 + '/' + '%d_Hazy.bmp'%(i)
            path_list.append(pathh_temp)

    else:
        list_i = os.listdir(path1)
        for i in list_i:
            if i.find('Image') != -1:
                shutil.move(path1+'/'+i, path2+'/' + i)
            else:
                continue
        for i in range(1,len(os.listdir(path2))+1):
            pathi_temp = path2+ '/' + '%d_Image_.bmp'%(i)
            path_list.append(pathi_temp)

    return path_list