如何解决:主要功能无法访问-Python 3.5

时间:2019-06-20 20:37:23

标签: python python-3.x pycharm

我正在尝试根据以下视频制作一个简单的机器人:https://www.youtube.com/watch?v=5Jwd69MRYwg

当屏幕的一部分改变颜色时应该调用的主要功能根本没有运行。

我尝试用

结束程序
"main()" 

"if __name__ == '__main__':
    main()"

分别。都不允许代码运行

def restart_game():
    time.sleep(1)
    pyautogui.click(Coordinates.replayBtn)
def image_grab():
    box = (290, 465, 305, 487)
    image = image_grab_lib.grab(box)
    grey = ImageOps.grayscale(image)
    a = array(grey.getcolors())
    print(a.sum())
    return a.sum()
def main():
    restart_game()
    print("blip")
    if image_grab() != 577:
        print("Jump")
        press_space()
        time.sleep(1)
        restart_game()

if __name__ == '__main__':
    main()

我希望主函数能够运行并给出打印“ blip”和“ jump”,当前正在运行所有其他代码,并且完全跳过了主函数。

shows what the warning looks like in PyCharm - image

1 个答案:

答案 0 :(得分:0)

您的代码无法访问,因为在main()定义之前有一个无限的while循环。在要求在声明所有变量后 name ==' main '条件的情况下,要求while循环将其放入其中的应用程序是一个好习惯。 像这样:

if __name__ == '__main__':
    while True:
        do_something()