python代码示例(读取excel文件,自动播放音频)

目录

python

操作excel

表结构

安装第三方库

代码

自动播放音频

介绍

安装第三方库

代码


python

操作excel

表结构

求出100班同学的平均分

安装第三方库

因为这里的表结构是.xlsx文件,需要使用openpyxl库

  • 如果是.xls格式文件,需要使用xlrd库

pip install openpyxl / xlrd

代码

python 复制代码
import openpyxl

# 1. 打开 xlsx 文件
workbook = openpyxl.load_workbook(r'D:\CloudMusic\gread.xlsx')

# 2. 获取 0 号标签页(可以通过 sheet 名字或者索引获取)
sheet = workbook.active  # 获取活动工作表,或者使用 workbook[sheet_name] 获取指定的 sheet

# 3. 获取总行数
nrows = sheet.max_row  # max_row 返回总行数

# 4. 遍历数据
count = 0
total = 0
for i in range(2, nrows + 1):  # 从第 2 行开始(索引从 1 开始,第 1 行是表头)
    classId = sheet.cell(row=i, column=2).value  # 获取第 i 行,第 2 列的 classId
    if classId == 100:  # 如果 classId 为 100
        total += sheet.cell(row=i, column=3).value  # 累加第 3 列的分数
        count += 1  # 计数

# 计算平均分
if count > 0:  # 防止除零错误
    print(f'平均分: {total / count}')
else:
    print("没有找到 classId 为 100 的数据")

自动播放音频

介绍

每按下 10 次按键,自动播放一个音频文件

  • 通过pynput库监听键盘按键
  • pygame库播放音频文件
安装第三方库
  • pip install pynput==1.6.8
  • pip install pygame
  • (本来是准备使用playsound库,但好像有编码问题,不懂,换成pygame库后就可以了)

代码

python 复制代码
import pygame
from pynput import keyboard

# 初始化 pygame 音频系统
pygame.mixer.init()

count = 0  # 用于记录按键次数

# 键盘释放时的回调函数
def on_release(key):
    global count
    count += 1  # 每次按键释放后计数加 1
    
    # 每按 10 次键,就播放一次音频
    if count % 10 == 0:
        print(f"按了 {count} 次,播放音频!")  # 打印按键计数
        pygame.mixer.music.load(r'D:\CloudMusic\Wake_up_my_music.mp3')  # 加载音频文件
        pygame.mixer.music.play()  # 播放音频

    # 设置退出条件,例如按 Esc 键退出
    if key == keyboard.Key.esc:
        print("退出监听器...")
        return False  # 返回 False 以停止监听

# 设置监听器
listener = keyboard.Listener(
    on_release=on_release  # 设置当按键释放时调用的回调函数
)

# 启动监听器
listener.start()

# 阻塞主线程,等待键盘事件
listener.join()
相关推荐
Smomo^O^14 小时前
基于FreeMarker模板引擎生成Word并导出PDF
java·开发语言
格林黄14 小时前
【无标题】
人工智能·python
cch891814 小时前
Java vs C语言:编程语言终极对决
java·c语言·开发语言
一只小小的土拨鼠14 小时前
【避坑指南】Qt + MSVC + CUDA 项目链接与发布报错全记录
开发语言·qt
List<String> error_P14 小时前
蓝桥杯3.8模拟赛2-5题
java·开发语言·python
报错小能手14 小时前
ios开发方向——swift并发进阶核心 @MainActor 与 DispatchQueue.main 解析
开发语言·ios·swift
ZHANG13HAO14 小时前
Python 调用 Node.js(vm2 沙箱)完美方案:胶水层实战教程
开发语言·python·node.js
asdzx6714 小时前
使用 C# 将 Excel 转换成高质量 JPG
开发语言·c#·excel
瑶总迷弟14 小时前
Python入门第7章:用户输入和 while 、for循环
开发语言·python·microsoft
曲幽14 小时前
FastAPI自动生成的API文档太丑?我花了一晚上把它改成了客户愿意付费的样子
python·fastapi·web·swagger·openapi·scalar·docs