【原创】python pyautogui SyntaxError: 'return' with argument inside generato

摘要: python pyautogui SyntaxError: 'return' with argument inside generato

最近在弄自动化,网上找了一些包,看到这个包还不错,本地环境是2.7的;

pip install pyautogui

顺利安装完成,执行下面代码:

# -*- coding: utf-8 -*-
import pyautogui
screenWidth, screenHeight = pyautogui.size()
currentMouseX, currentMouseY = pyautogui.position()
pyautogui.moveTo(100, 150)
pyautogui.click()
#  鼠标向下移动10像素
pyautogui.moveRel(None, 10)
pyautogui.doubleClick()
#  用缓动/渐变函数让鼠标2秒后移动到(500,500)位置
#  use tweening/easing function to move mouse over 2 seconds.
pyautogui.moveTo(1800, 500, duration=2, tween=pyautogui.easeInOutQuad)
#  在每次输入之间暂停0.25秒
pyautogui.typewrite('Hello world!', interval=0.25)
pyautogui.press('esc')
pyautogui.keyDown('shift')
pyautogui.press(['left', 'left', 'left', 'left', 'left', 'left'])
pyautogui.keyUp('shift')
pyautogui.hotkey('ctrl', 'c')

看到报错了,报错如下图:

image.png

看着代码没错,包也安装了,报错;然后去度妈找了一下,发现也没找到点什么,然后就自己认真看了看报错的地方:

  File "C:\python27\lib\site-packages\pyautogui\__init__.py", line 84, in <module>

这行错了,找到这个文件发现没错,然后继续找:

  File "C:\python27\lib\site-packages\pyscreeze\__init__.py", line 168

image.png

看到报错了,然后根据这个错误继续查资料,发现是您不能使用return值来退出Python 2或Python 3.0 - 3.2中的生成器。你需要使用yield加上return没有表达式的a生成器错误;有点懒看到这个报错知道不能用return就把这个删了:

else:
    return None

删了之后继续运行,又出现新的错误:

image.png

又是这个错误,找到这个文件,继续删除:

else:
    return None

image.png

如果需要文件的话请联系17762131 (网站附件不能上传py文件)

也要把这一行给替换一下,然后再继续运行,就发现代码可以正常运行了,非本人同意禁止转载!



网友留言评论

0条评论