来自 IDL,我发现在 python 中很难通过单击左键获得鼠标的 x-y 位置,使用的方法不像在 tkinter 中那样矫枉过正。有谁知道一个 python 包,它包含一个方法,当鼠标被点击时只返回 x-y(类似于 IDL 中的光标方法)?
最佳答案
您可以使用许多库。这是两个第三方的:
使用 PyAutoGui
强大的 GUI 自动化库允许您获取屏幕尺寸、控制鼠标、键盘等。
要获得位置,您只需使用 position()
函数。这是一个例子:
>>>import pyautogui
>>>pyautogui.position()
(1358, 146)
>>>
其中 1358
是 X 位置,146
是 Y 位置。
使用 Pynput
另一个(更简约的)库是 Pynput:
>>> from pynput.mouse import Controller
>>> mouse = Controller()
>>> mouse.position
(1182, 153)
>>>
其中 1182
是 X 位置,153
是第二个。
这个库非常容易学习,不需要依赖项,使这个库成为像这样的小任务的理想选择(PyAutoGui 就太过分了)。不过,它并没有提供那么多功能。
特定于 Windows:
对于平台相关的,但可以在这里找到默认的库选项(尽管您可能仍然认为它们太过分了):Getting cursor position in Python。
关于Python在点击时获取鼠标x,y位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25848951/