Python定义函数错误

时间:2017-09-06 13:21:34

标签: python function

我需要创建一个函数,使用乌龟图形在画布上以四个片段发布图像,我已经编写了以下函数

def locations(local):
# Move to location
    if local[1] =='Location 1':
        goto(-300,0)

    elif local[1] == "Location 2":
        goto(-150,0)

    elif local[1] == 'Location 3':
        goto(0,0)

    elif local[1] == "Location 4":
        goto(150,0)

# Get correct Orientation
    if local [2] == "Upright":
        setheading(0)
    elif local [2] == "Upside down":
        setheading(180)


def paste_up (arrangement):
    for sheets in arrangement:
        if (len(sheets)>1):
            print(sheets[1])
            for places in "Data_sets":
            if sheets [0] == 'Sheet A':
                locations(local)
                sheeta()
            elif sheets [0] == "Sheet B":
                sheetb()
            elif sheets [0] == 'Sheet C':
                sheetc()
            elif sheets [0] == 'Sheet D':
                sheetd()

我收到此错误:

  

NameError:未定义名称“local”

如何让我的paste_up函数引用我的位置函数?

1 个答案:

答案 0 :(得分:0)

假设在paste_up 外定义了locations, 你在这里打电话给locations(local)

if sheets [0] == 'Sheet A':
    locations(local)

但当然没有定义local名称。你必须添加一个参数或定义它(但是因为你不知道它是什么或来自哪里,我只能这样说)

假设paste_up实际定义为INSIDE locations ,您的代码看起来很好,并且您必须向我们提供一个描述的位置发生错误。