PyAutoGUI displayMousePosition()返回None问题求助(PyCharm环境)
解决pyautogui.displayMousePosition() 无实时输出且返回None的问题
问题本质
pyautogui.displayMousePosition() 本身是一个自带循环的实时打印函数,它不会返回任何值(所以你赋值给position得到的是None),而且运行时会独占控制台输出,导致你自己写的print(position)被缓冲,直到程序终止才一次性输出所有积累的None。
两种解决办法
办法1:直接使用displayMousePosition()的原生功能
不需要自己写while循环,这个函数内部已经做好了循环打印逻辑:
import pyautogui pyautogui.displayMousePosition()
运行后控制台会实时显示鼠标坐标,按Ctrl+C就能终止程序。
办法2:手动获取并打印鼠标位置(用position())
如果需要自定义输出逻辑,用pyautogui.position()来获取坐标,它会返回包含x、y值的Point对象:
import pyautogui import time while True: position = pyautogui.position() print(f"鼠标坐标:x={position.x}, y={position.y}") time.sleep(0.1) # 加延迟避免输出过快刷屏
这个版本能实时在控制台看到坐标,终止程序也不会出现一堆None。
内容的提问来源于stack exchange,提问作者Pokemon
相关产品推荐
相关产品推荐

