python - 导入错误: cannot import name '_NORMALIZED_MODIFIERS' from pynput

标签 python pynput

我找不到任何有关如何使用 pynput 修复此导入错误的信息。重新安装了 pynput,做了一个简单的测试,尝试了不同的按键来按下/释放,但都出现相同的错误。

错误消息:

PS C:\Users\username\Desktop\Python Voice Cmd Input> python -m test
Traceback (most recent call last):
  File "C:\ProgramData\Miniconda3\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\ProgramData\Miniconda3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\username\Desktop\Python Voice Cmd Input\test.py", line 6, in <module>
    keyboard.press(Key.space)
  File "C:\ProgramData\Miniconda3\lib\site-packages\pynput\keyboard\_base.py", line 363, in press
    self._update_modifiers(resolved, True)
  File "C:\ProgramData\Miniconda3\lib\site-packages\pynput\keyboard\_base.py", line 574, in _update_modifiers
    if self._as_modifier(key):
  File "C:\ProgramData\Miniconda3\lib\site-packages\pynput\keyboard\_base.py", line 595, in _as_modifier
    from .. import _NORMALIZED_MODIFIERS
ImportError: cannot import name '_NORMALIZED_MODIFIERS' from 'pynput' (C:\ProgramData\Miniconda3\lib\site-packages\pynpu
t\__init__.py)

不返回错误:

$ Python
>>> import pynput   

并从 IDLE 中键入脚本会返回相同的错误。

版本:
python 3.7.4
点19.3.1
conda 4.8.0(迷你conda)
pynput 1.6.1
Windows 8.1

测试.py

#!/usr/bin/env python3
from pynput.keyboard import Key, Controller

keyboard = Controller()

keyboard.press(Key.space)
keyboard.release(Key.space)

最佳答案

这是 pynput 1.6.1 版本中的错误。 您可以重新安装较新的版本 或者 在\pynput\keyboard\中的文件“_base”中,它尝试执行:

from .. import _NORMALIZED_MODIFIERS

您所需要做的就是更改它:

from . import _NORMAL_MODIFIERS

这对我有用,希望有帮助:)

关于python - 导入错误: cannot import name '_NORMALIZED_MODIFIERS' from pynput,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59507268/

相关文章:

Python tkinter : Replacing an image button with an image label by pressing the button

python - 按下键时记录鼠标单击并在 python 中释放相同键时停止记录

python - 为什么当我导入 pynput 并使用它时它会删除我的 python 文件?

python - 如何在 Tkinter 中单击条目时显示默认触摸键盘?

python - 如何理解鼠标按下的时间?

python - 如何在Windows中使用pynput按下媒体键?

python - 检查某个键是否被按下

python - 在数据框中使用 isin 和 NaN

Python 飞行距离和时间计算器

python - 如何在 CouchDB (Python) 中查询否定结果