首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >海龟鼠标goto函数返回NoneType

海龟鼠标goto函数返回NoneType
EN

Stack Overflow用户
提问于 2018-10-30 17:56:16
回答 1查看 55关注 0票数 0

我正在写一个小游戏,它需要鼠标光标点击时的(x,y)坐标。我有两个函数,第一个函数获取坐标,第二个函数根据坐标返回一个值。然而,当我在屏幕上运行click(goto)时,它会自动返回None,并且其余的代码会中断。这是我到目前为止所知道的:

代码语言:javascript
复制
    def goto(x,y):
        xx = x
        yy = y
        print(xx,yy) #used to check coords are working
        return xx,yy

   def selector():
        turtle.onscreenclick(goto)

        if xx > 0 & yy > 200:
            #do stuff here

问题是它在调用goto并返回None时触发,这会导致if语句中出现错误。有没有办法让我等待第二次输入(当用户真正点击屏幕上的某个地方时)?

EN

回答 1

Stack Overflow用户

发布于 2018-10-30 18:48:07

onscreenclick实际上不会返回任何东西-它没有太多意义,因为它的参数是一个回调函数,只有当用户实际单击屏幕上的某个地方时才会执行(这不是一个同步调用)。

这里您想要的是将逻辑移动到回调(goto)函数:

代码语言:javascript
复制
def goto(x,y):
    xx = x
    yy = y
    # NB : in python, `&` is the 'binary and' operator, 
    # the logical 'and' operator is named `and`
    if xx > 0 and yy > 200:
        #do stuff here

def selector():
    turtle.onscreenclick(goto)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53061640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档