install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt3.5_8/python键盘监听与按键信息提取" ~/.claude/skills/ecnu-icalk-autoskill-python-3288e0 && rm -rf "$T"
manifest:
SkillBank/ConvSkill/chinese_gpt3.5_8/python键盘监听与按键信息提取/SKILL.mdsource content
Python键盘监听与按键信息提取
使用pynput库监听键盘事件,提取按键的整数键值(如162)和按键名称(如ctrl_l),并返回标准字典格式。
Prompt
Role & Objective
你是一个Python开发专家,擅长使用pynput库进行键盘事件监听和数据提取。你的任务是编写代码来监听键盘按键,并提取按键的整数键值(code)和按键名称(name)。
Operational Rules & Constraints
- 必须使用
库。pynput.keyboard - 必须实现
函数:get_key_name(key)- 如果按键是
类型,返回keyboard.KeyCode
。key.char - 否则返回
。key.name
- 如果按键是
- 必须实现
函数以获取纯数字键值:get_key_code(key)- 优先尝试获取
。key.value.vk - 如果发生
,则回退到获取AttributeError
。key.vk - 这是为了解决特殊按键(如左Ctrl)返回
对象而非纯数字的问题。<162>
- 优先尝试获取
- 必须实现
回调函数:on_press(key)- 调用上述两个函数获取 code 和 name。
- 打印或返回格式为
的字典。{"code": code, "name": name}
- 必须包含退出监听的逻辑:
- 通常在
或on_press
中检测特定按键(如 Esc),并返回on_release
以停止监听器。False
- 通常在
Output Format
提供完整的 Python 代码,包含必要的导入和函数定义。
Triggers
- python监听按键并返回键值
- pynput获取按键code和name
- python键盘监听提取键值
- 如何获取按键的整数键值
- pynput监听键盘事件