Python中keyboard的使用之监控键盘的按键输入

 更新时间:2024年11月01日 09:58:44   作者:DY009J  
Python的keyboard模块是一个强大的工具,用于监听和处理键盘事件,该模块允许程序获取键盘输入,并执行相应操作,如监听、捕获热键、模拟键位和获取键盘状态等,文中通过代码介绍的非常详细,需要的朋友可以参考下

Python的keyboard模块是一个用于监听和处理键盘事件的模块。它可以让Python程序获取用户在键盘上的输入,并可以对输入进行相应的处理。

keyboard模块的功能包括:

  • 监听按键:可以监听用户按下和释放的键盘按键,并触发相应的事件。
  • 捕获热键:可以捕获用户定义的热键,当用户按下热键时,可以触发相应的操作。
  • 模拟键盘按键:可以模拟用户在键盘上按下和释放某个按键。
  • 获取键盘状态:可以获取键盘上某个按键的当前状态,如按下还是释放。

keyboard模块可以在Windows、Mac和Linux操作系统上使用,并且不需要安装额外的库文件。它被广泛用于编写Python程序中与键盘交互的功能,如游戏、自动化脚本、快速输入等。

keyboard库的安装

手动安装

首先打开cmd:

输入命令

pip install keyboard#回车确定,直接下载,

keyboard就安装在你的计算机上了

注:如果报错,请到末尾找到答案

脚本安装

import os #所需os库(运行终端命令)

update='python.exe -m pip install --upgrade pip'#更新pip
pre=os.system(update)
while True:#循环语句                                           
 ku_name=input("请输入所需下载第三方库的名称:")
 common=("pip install "+ku_name)#组装下载命令
 choose=input("正在做最后的确认无误后请输入(y)")#执行组装的common命令,请求用户选择
 if  choose=="y"or choose=="Y" :#if的判断语句
    print("执行代码:",common)
    go=os.system(common)#输出结果名为go的os库的以管理员权限运行名为common的命令
    print("运行情况",go)           #输出结果
    print(ku_name,"程序运行完成")       
 else:
    print(ku_name,"程序运行完成")
    exit(0) #无条件(错误)终止程序代码
    
########################################################################
'''创作不易,感谢支持'''

keyboard的使用教程(语法):

监控键盘

import keyboard

def int_keyboard(event):
    print(event.name)

keyboard.on_press(int_keyboard)
keyboard.wait()

上面,我们定义了一个名为int_keyboard的函数,,用于处理按键事件。在int_keyboard函数中,我们使用print函数来输出按下的按键的名称。

接下来,我们使用keyboard.on_press函数来监听按键事件。当有按键被按下时,int_keyboard函数会被调用。最后,我们使用keyboard.wait函数来使程序进入监听状态,等待按键事件。

运行以上代码,我们可以在控制台中看到按下按键时输出的按键名称。例如,按下’W’键,控制台会输出w。按下空格键,控制台会输出spacer。
示例

监控指定按键

我们除了监控所有按键输入,还可以只监控指定的按键。keyboard库还提供了keyboard.is_pressed函数来判断某个按键是否被按下。

import keyboard

def on_key_pressed(event):
    if event.name == 'a':  # 监控按下的a键
        print('a键被按下')

def on_key_released(event):
    if event.name == 'a':  # 监控释放的a键
        print('a键被释放')

keyboard.on_press_key('a', on_key_pressed)
keyboard.on_release_key('a', on_key_released)

keyboard.wait('esc')  # 等待按下esc键停止监听

在上述代码中,我们使用on_press_key函数来监听按下的’a’键,并在on_key_pressed函数中进行相应的处理。类似地,使用on_release_key函数来监听释放的’a’键,并在on_key_released函数中进行相应的处理。最后,使用keyboard.wait(‘esc’)函数等待按下esc键来停止监听。

可以根据自己的需求修改代码中的按键名称,以监控其他按键的按下。

监控组合键

除了单个按键的监控,我们还可以监控组合键的按下。组合键由多个按键同时按下组成。keyboard库提供了keyboard.is_pressed函数来判断多个按键是否同时被按下。

import keyboard

while True:
    if keyboard.is_pressed('leftwin') and keyboard.is_pressed('r'):
        print('win+R被按下')
        break

在上述代码中,我们通过检查keyboard.is_pressed(‘ctrl’)和keyboard.is_pressed(‘c’)的返回值,来判断Ctrl和C键是否同时被按下。当Ctrl+C键同时被按下时,程序输出一条消息,并且通过break语句跳出循环。

你可以根据自己的需求修改代码中的按键名称,以监控其他组合键的按下。

总结

总结一下,Python的keyboard模块可以用于监控键盘按键事件。它的作用包括:

  • 监控指定按键:可以使用keyboard.is_pressed函数来检测某个按键是否被按下。
  • 监控组合键:可以使用keyboard.add_hotkey函数注册组合键,并指定相应的回调函数来处理按键事件。

通过使用keyboard模块,你可以编写Python程序来实现键盘事件的监控和处理,从而实现一些自动化、快捷键等功能。

到此这篇关于Python中keyboard的使用之监控键盘的按键输入的文章就介绍到这了,更多相关Python keyboard监控键盘按键输入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Qt通过QGraphicsview实现简单缩放及还原效果

    Qt通过QGraphicsview实现简单缩放及还原效果

    本文主要介绍通过QGraphicsview实现简单的缩放以及缩放后还原原始大小,通过scale可以对view进行放大或缩小,具体内容详情跟随小编一起看看吧
    2021-09-09
  • Python包管理工具核心指令uvx举例详细解析

    Python包管理工具核心指令uvx举例详细解析

    这篇文章主要介绍了Python包管理工具核心指令uvx的相关资料,uvx是uv工具链中用于临时运行Python命令行工具的高效执行器,依托Rust实现,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-06-06
  • Python 时间操作datetime详情(下)

    Python 时间操作datetime详情(下)

    我们在上一文datetime模块对datetime模块中包含了六个类对象如date、time、datetime等对时间和日期进行操作。这一篇文章我们继续上一篇文章的内容学习datetime模块中六大类的相关方法和属性
    2021-11-11
  • Python request中文乱码问题解决方案

    Python request中文乱码问题解决方案

    这篇文章主要介绍了Python request中文乱码问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Python入门篇之对象类型

    Python入门篇之对象类型

    本章中我们将讲述Python的对象类型,包括数字、整型、布尔型、长整形、浮点型、复数型、字符串、列表、元组、字典等。
    2014-10-10
  • Python中列表获取元素下标的方法小结

    Python中列表获取元素下标的方法小结

    Python获取列表下标的方法包括.index()、enumerate()、列表推导式、range()及numpy/pandas库,适用于不同场景,本文通过代码示例讲解的非常详细,需要的朋友可以参考下
    2025-08-08
  • 使用Python读取Excel数据在PPT中创建图表

    使用Python读取Excel数据在PPT中创建图表

    使用Python从Excel读取数据并在PowerPoint幻灯片中创建图表不仅能够极大地简化图表创建过程,通过Python这一桥梁,我们可以轻松实现数据自动化处理和图表生成,本文将演示如何使用Python读取Excel数据在PPT中创建图表,需要的朋友可以参考下
    2024-08-08
  • Python+PyQt5制作一个图片查看器

    Python+PyQt5制作一个图片查看器

    在PyQt中可以使用很多方式实现照片查看器,本文将利用QGraphicsView类来实现图片查看器的制作,感兴趣的小伙伴快跟随小编一起动手试一试
    2022-03-03
  • 详解利用OpenCV提取图像中的矩形区域(PPT屏幕等)

    详解利用OpenCV提取图像中的矩形区域(PPT屏幕等)

    这篇文章主要介绍了详解利用OpenCV提取图像中的矩形区域(PPT屏幕等),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-07-07
  • 解决python递归函数及递归次数受到限制的问题

    解决python递归函数及递归次数受到限制的问题

    这篇文章主要介绍了解决python递归函数及递归次数受到限制的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论