首页 > 编程语言 >python 监听鼠标和键盘

python 监听鼠标和键盘

时间:2024-02-07 09:56:03浏览次数:26  
标签:鼠标 python listener keyboard print mouse 监听

目录

python 监听鼠标和键盘

开始前安装 pynput

pip install pynput
from pynput import keyboard, mouse

# 监听鼠标点击事件
def on_click(x, y, button, pressed):
    if pressed and button == mouse.Button.left:
        print("鼠标左键被按下")
    elif pressed and button == mouse.Button.right:
        print("鼠标右键被按下")

# 监听鼠标滚轮事件
def on_scroll(x, y, dx, dy):
    if dy < 0:
        print("鼠标向下滚动")
    elif dy > 0:
        print("鼠标向上滚动")

# 监听键盘按下事件
def on_press(key):
    try:
        print("按键 {0} 被按下".format(key.char))
    except AttributeError:
        print("特殊按键 {0} 被按下".format(key))

# 创建鼠标监听器
mouse_listener = mouse.Listener(on_click=on_click, on_scroll=on_scroll)
mouse_listener.start()

# 创建键盘监听器
keyboard_listener = keyboard.Listener(on_press=on_press)
keyboard_listener.start()

# 阻塞主线程
keyboard_listener.join()
mouse_listener.join()

标签:鼠标,python,listener,keyboard,print,mouse,监听
From: https://www.cnblogs.com/liwenchao1995/p/18010635

相关文章

  • 22个Python绘图包,极简总结!
    你好,我是zhenguo今天这篇文章不是项目,我的第十个项目还在整理中。今天我参考github,总结出一个极简但却包括了几乎所有Python的绘图包。一共22个Python绘图包:Python绘图包altair-基于VegaLite的声明性统计可视化bokeh-用于Python的交互式Web绘图Chartify-Bokeh包装,使......
  • Python生成器表达式和生成器(yield)用法总结
    ​ Python中,在处理一个新序列,不想在内存中放置一个新的列表、集合或者字典。因为可能数据量比较大,不能将所有数据都放到内存中。可能只做一次遍历,而不关心是否要创建一个最终的对象容器。此时就可以使用生成器了。生成器是一种使用简洁的语法创建迭代器的工具。主要有两种方......
  • Python编写游戏有什么注意
    标题:Python游戏开发的注意事项与技巧Python作为一种功能丰富且易于学习的编程语言,在游戏开发领域也有着广泛的应用。然而,在使用Python编写游戏时,开发者需要注意一些特定的技巧和注意事项,以确保游戏的性能、可维护性和用户体验。本文将介绍Python游戏开发中的一些关键注意事项和技巧......
  • python 自学的学习方法有哪些?
    自学的学习方法是什么?我发现好多人不会自学。在此再次讲下如何自学。自学流程:1:找一篇python教程。百度搜一篇免费的教程最好的教程符合几个特点:免费,文档,有源码实例。2:以最快的方式粗疏的过一遍python教程,不要深究细节,最慢一周看完,然后不管懂不懂,都开始下一步。3......
  • python入门教程详细从零基础入门到精通一站式解决方案
    前言众所周知,Python以优雅、简洁著称,入行门槛低,可以从事Linux运维、PythonWeb网站工程师python自动化测试、数据分析、人工智能等职位,薪资待遇呈上涨趋势,对于许多未曾涉足IT行业「小白」来说,深入地学习python是一件十分困难的事。我这个小萌新当时什么也不懂,就傻乎乎地开始了学......
  • python之面向对象学习二
     1.字段普通字段(如构造函数里面的实例参数),访问普通参数需要实例化静态字段(类里面的参数),访问静态字段类名.字段名1#!/usr/bin/python2classPeople(object):3test=[1,2,3,4]#类参数4def__init__(self,name,age,sex):#实例化、实例参数5......
  • python学习笔记37-pandas
    内容来自https://www.runoob.com/pandas/pandas-tutorial.html目录1.Series1.1Series特点1.2更多Series说明1.2.1基本操作1.2.2基本运算1.2.3属性和方法2.DataFrame2.1DataFrame特点2.2更多DataFrame说明2.2.1基本操作2.2.2属性和方法2.2.3数据操作2.2.4从外部数据......
  • python之面向对象学习一
    面向对象的几个核心特性如下Class类一个类即是对一类拥有相同属性的对象。在类中定义了这些对象的都具备的属性(variables(data))、共同的方法Object对象一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每个对象亦可以有不同......
  • Liunx安装配置python3
    liunx系统下会默认自带python2.0版本,查看python版本:python-V官网下载python3.10.0版本上传到liunx机器解压并移动到/usr目录下#解压命令tar-zxvfPython-3.10.0.tgz#移动到/usr/python3目录下mkdir/usr/python3mvPython-3.10.0/usr/python3安装依赖包yumins......
  • python推荐音乐系统
    importpandasaspdimportnumpyasnpimporttimeimportsqlite3data_home='E:/python学习/项目/python推荐系统/Python实现音乐推荐系统/'读取数据triplet_dataset=pd.read_csv(filepath_or_buffer=data_home+'train_triplets.txt',......