You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python实现字符串映射键盘按键,一键粘贴指定内容

用Python实现字符串到键盘按键的映射与快捷粘贴

核心思路

完全可以用Python实现这个需求,核心逻辑是监听指定按键的按下事件,触发时将预定义字符串复制到系统剪贴板,再模拟粘贴操作,让内容直接插入到当前光标位置。

所需依赖库

  • pynput:负责监听键盘按键、模拟输入操作
  • pyperclip:用于快速读写系统剪贴板

安装命令:

pip install pynput pyperclip

实现代码示例

以下是一个基础实现,将F9键映射为粘贴字符串Hello, Python!,你可以根据需求扩展映射表:

import pynput.keyboard as kb
import pyperclip
import time

# 定义按键-字符串映射表
string_mapping = {
    kb.Key.f9: "Hello, Python!",
    kb.Key.f10: "这是自定义的第二串内容",
    # 可添加更多按键与字符串的对应关系
}

def on_key_press(key):
    try:
        # 检查按下的键是否在映射表中
        if key in string_mapping:
            target_str = string_mapping[key]
            # 将目标字符串写入剪贴板
            pyperclip.copy(target_str)
            # 模拟Ctrl+V粘贴(Mac系统替换为kb.Key.cmd)
            with kb.Controller() as controller:
                controller.press(kb.Key.ctrl)
                controller.press('v')
                controller.release('v')
                controller.release(kb.Key.ctrl)
                time.sleep(0.1)  # 短暂延迟避免操作冲突
    except Exception as e:
        print(f"执行出错: {e}")

# 启动键盘监听器,保持后台运行
with kb.Listener(on_press=on_key_press) as listener:
    listener.join()

关键注意事项

  • 脚本运行期间需保持后台活跃,关闭则失效
  • Mac系统需将代码中的kb.Key.ctrl替换为kb.Key.cmd以适配Cmd+V粘贴
  • 若要使用组合键(如Ctrl+Shift+A),需额外处理按键的按下/释放状态判断
  • 部分软件自带的快捷键可能与自定义按键冲突,需提前避开冲突按键

内容的提问来源于stack exchange,提问作者TurboC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:37:41