等到函数在Python中完成执行

wal*_*wal 2 python

我是Python的新手

我有以下代码:

在我的内部有另一个for循环然后第二个for循环调用一个函数,它执行另一个for循环.现在我希望第二个for循环等到第三个循环完成它的工作.怎么做?

谢谢

def GetArea(img):
    os.chdir("C:\RJC Files\Thesis\Biometrics Thesis\Raw Data\Pics\PickedImages\\" + str(x) + "\\Process")
    for file2 in glob.glob("*.png"):
        # DO SOMETHING 
        # TAKE SOMETIME TO FINISH HERE.
-----------------------------------------------------------     
for x in range(1, 2):
    os.chdir("C:\RJC Files\Thesis\Biometrics Thesis\Raw Data\Pics\PickedImages\\" + str(x) + "\\Area")
    for file in glob.glob("*.png"):
        img = cv2.imread(file, 0)

        GetArea(img)
Run Code Online (Sandbox Code Playgroud)

Cir*_*reo 8

默认情况下,python同步运行(几乎所有编程语言都是如此).这意味着任何语句将在下一个语句开始之前完成.你必须不遗余力地改变这种行为.

顺便说一句:你有一个问题,你x在函数内部引用但它没有被传入.这可能目前x正在工作,因为被视为一个全局变量,但让你的函数接受它更合适,或更改您的glob.glob调用.