《python趣味工具》——酷炫二维码(3)计算机二级考试题

news2024/12/23 13:51:13

昨天我们学习了如何批量制作合适的二维码,今天来刷几道题练练手!

在这里插入图片描述


文章目录

    • 1. 制作名单
    • 2. 年会抽奖来啦
    • 3. 精准查找


1. 制作名单

秋招来了!hr部门需要获得简历初筛后的候选者名单,所有候选者简历都按照“小明_xx大学.pdf”命名放在文件夹内,使用昨天学习的内容,可以迅速获取候选人名单么🤔

步骤如下:

  1. 获取文件夹内所有文件的名称;

  2. 如果文件名里有"_",就分割文件名,获取第一个元素即姓名;

  3. 将所有的名称放入列表中,并输出。

文件夹路径:“/Users/minmin/简历合集”

# 导入os模块
import os

# 将文件夹路径"/Users/minmin/简历合集",赋值给变量pathFile
pathFile = "/Users/minmin/简历合集"

# 使用os.listdir()函数获取该路径下所有文件名,并赋值给变量allItems
allItems=os.listdir(pathFile)

# 初始化列表name_list,存储名单
name_list = []

# for循环遍历allItems,赋值给变量item
for item in allItems:
# 如果文件名有"_"
    if("_" in item):
        # 通过"_"分割文件名
        # 索引第一个元素赋值给变量name
        name=item.split("_")[0]
        
        # 使用append方法将name添加到name_list中
        name_list.append(name)    
        
# 使用print()输出name_list
print(name_list)

2. 年会抽奖来啦

年末啦,邹邹任职的公司组织了年会,年会上怎么少得了抽奖呢!从 1-200 的工号中随机抽取一位数,并找出对应的员工姓名,这该怎么实现呢?🤔
在这里插入图片描述

步骤如下:

  1. 从 1- 200 中随机成生成一个数;

  2. 读取 Excel 文件,获取第一张工作表中非表头数据;

  3. 按行遍历工作表中的数据,将每一行的数据放在列表中;

    • 3.1. 如果列表中的第一个元素与随机数匹配,那么就获取列表第二个元素;
    • 3.2 格式化字符串输出"获奖者是工号为{工号}的{名字}"。

工作表部分截图

在这里插入图片描述
1️⃣.nrows 属性可以获取工作表的行数

rows = table.nrows
print(rows)

2️⃣从列表中随机选取一个元素

import random
num = random.randint([1, 2, 3, 4])
print(num)

示例代码如下:

# 导入xlrd
import xlrd

# 导入 random
import random

# 将Excel文件夹路径/Users/minmin/资料.xlsx,赋值给变量path
path = "/Users/minmin/资料.xlsx"

# 读取path的工作簿并赋值给变量data
data = xlrd.open_workbook(path)

# 使用sheets()获取工作表对象,索引第一个元素赋值给变量table
table = data.sheets()[0]

# 获取table的行数,并赋值给变量rows
rows=table.nrows

# 随机从1到200选一个数,赋值给num
num=random.randint(1,200)

# for循环遍历工作表非表头的行数,赋值给变量row
for row in range(1,rows):

  # 使用row_values()得到工作表的对应行数据,并赋值给变量data_row
    data_row=table.row_values(row)
    
     # 如果列表data_row第一个元素为num
    if(data_row[0]==num):
    
     # 将列表第二个元素赋值给name
        name=data_row[1]
        
        # 格式化输出"获奖者是工号为{工号}的{名字}"
        print(f"获奖者是工号为{num}{name}")
        
        break # 退出循环!      

3. 精准查找

天啊~敏敏在整理同事们的头像时,不小心混入了非公司员工的图片,要一一比对查找出可太费时了,这可怎么办呀🤔

通过今天的学习敏敏想到了好办法,可以将Excel文件中的名字与文件夹中的文件名进行比对,找出不小心混入的图片。

解题步骤:

  1. 导入 xlrd 模块,使用 xlrd.open_workbook() 读取指定工作簿,sheets() 获取第一个工作表,col_values() 将表格中的名字全部提取出来;

  2. 导入 os 模块,使用 os.listdir() 获取文件夹路径下所有文件名;

  3. 遍历存储文件名的列表;

    • 3.1 如果文件名不是".DS_Store",调用 split() 分割文件名,得到文件名称;
    • 3.2 如果文件名称不在名字中,则用格式化字符串输出"xx非公司员工"。

文件路径:
Excel 文件:/Users/minmin/资料.xlsx
头像文件夹:/Users/minmin/Selfie
在这里插入图片描述

示例代码如下:

# 冲
import xlrd

path="/Users/minmin/资料.xlsx"

data=xlrd.open_workbook(path)

work1=data.sheets()[0]

work1Names=work1.col_values(1)

import os

pathFile="/Users/minmin/Selfie"

fileName=os.listdir(pathFile)

count=0

for name in fileName:

    if(name!=".DS_Store"):
    
        myname=name.split(".")[0]
        
        if myname in work1Names:
        
            count+=1
            
        else:        
         
            print(f"{myname}非公司员工")

哈哈,今天到这里就结束了呢,敬请期待下一个趣味项目吧!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/995612.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第8章_瑞萨MCU零基础入门系列教程之SCI SPI

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id728461040949 配套资料获取:https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总: ht…

DBSCAN 揭秘:了解此算法的工作原理

一、说明 DBSCAN 代表 基于密度的带噪声应用程序空间聚类。它是一种流行的聚类算法,用于机器学习和数据挖掘,根据数据集中紧密排列在一起的点与其他点的距离对点进行分组。 二、DBSCAN的算法原理 DBSCAN 的工作原理是将数据划分为由密度较低的区域分隔的…

数据结构与算法:数据结构基础

目录 数组 定义 形式 顺序存储 基本操作 读取元素 更新元素 插入元素 删除元素 扩容 初始化 时机 步骤 优劣势 链表 定义 单向链表 特点 双向链表 随机存储 基本操作 查找节点 更新节点 插入节点 删除元素 数组VS链表 栈与队列 栈 定义 基本操作…

分类预测 | Matlab实现SO-RF蛇群算法优化随机森林多输入分类预测

分类预测 | Matlab实现SO-RF蛇群算法优化随机森林多输入分类预测 目录 分类预测 | Matlab实现SO-RF蛇群算法优化随机森林多输入分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现SO-RF蛇群算法优化随机森林多输入分类预测(完整源码和数据&…

notepad++去除每一行第二个等号之后的内容解决ResolvePackageNotFound

([^])$ 正则表达式用第一行的 https://blog.csdn.net/Charlotte_Si/article/details/132333988 原文的正则表达式不知道为什么没用

XXE-Lab for PHP

环境配置 1.将靶场进行下载.... https://github.com/c0ny1/xxe-lab 2.将PHPStudy的中间件与版本信息调制为php-5.4.45Apache访问以下地址开始练习... http://127.0.0.1/xxelabs/php_xxe/ 靶场实操 1.在登录界面输入账号密码并抓取数据包.... 2.尝试读取本地文件.... <…

第6章_瑞萨MCU零基础入门系列教程之串行通信接口(SCI)

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…

TCP协议报文,核心特性可靠的原因,超时重传详细介绍

目录 一、TCP协议 二、TCP核心特性的保障 三、保留的六位标志位对于应答报文的作用 四、如何处理丢包——超时重传的原理 五、超时重传的时间 一、TCP协议 每一行是四个字节&#xff0c;前面的20个字节是固定的&#xff08;TCP最短长度&#xff0c;20字节&#xff0c;选项…

进制和编码

目标&#xff1a;了解计算机中一些必备的尝试知识&#xff0c;了解常见名词背后的意义 1.python的运行方式 交互式运行脚本式运行 2.进制 2.1 进制的转换 计算机中底层的所有数据都是0101010101的形式存在的 八进制无法直接转为2进制 十进制转其他进制 bin(25) # 10进制转…

[XSCTF]easyxor

查看&#xff0c;main函数&#xff0c;首先是将输入的数据与key中的字符依次异或 在这个循环里&#xff0c;将异或得到的结果每次减去1&#xff0c;同时在数组里写上1&#xff0c;往后遍历数组 直到异或得到的结果减为0&#xff0c;在数组中写一个0进行标记 最后比较数组是否与…

百度飞桨(厦门)人工智能产业赋能中心签约,共创人工智能产业协同服务新生态...

9月8日&#xff0c;第二十三届中国国际投资贸易洽谈会在厦门正式开幕。 当日&#xff0c;厦门市思明区政府和火炬管委会&#xff0c;与百度正式签约&#xff0c;联手共建百度飞桨&#xff08;厦门&#xff09;人工智能产业赋能中心。思明区委书记林重阳&#xff0c;厦门市工信局…

【 NTR-domain ;NTR-C345C】

tissue inhibitors of metalloproteases (TIMP) TIMP NTR-C345C HPX-binding-domain [ MMP CAT(FN2)PEX (hemopexin) ] [ MMP-9-inhibitor a-2M (NTR-C345C) ] netrin Laminin-GLaminin-EGFNTR-domain

软件测试报告有什么用?

报告类型 不同的报告类型有不同的报告用途&#xff0c;以下分类别进行分析 1、登记测试报告 可以用于软件产品的增值税即征即退、软件企业的双软评估以及计算机系统集成资质的材料 2、鉴定\确认测试报告 可以用用于政府项目申报、高新认证、项目结题、创新产品认定、各类政…

c++11 override 和 final 关键字

1. final&#xff1a;修饰虚函数&#xff0c;表示该虚函数不能再被重写 如果一个类不想被继承&#xff1a;下面分别提供了c98 和 c11的不同写法 c 98 的写法&#xff1a; c 11 的写法&#xff1a;final最终类 2. override: 检查派生类虚函数是否重写了基类某个虚函数&#xff…

机器学习——K最近邻算法(KNN)

机器学习——K最近邻算法&#xff08;KNN&#xff09; 文章目录 前言一、原理二、距离度量方法2.1. 欧氏距离2.2. 曼哈顿距离2.3. 闵可夫斯基距离2.4. 余弦相似度2.5. 切比雪夫距离2.6. 马哈拉诺比斯距离2.7. 汉明距离 三、在MD编辑器中输入数学公式&#xff08;额外&#xff0…

C++数据结构X篇_11_C++栈的应用-后缀表达式求解

上篇C栈的应用-中缀转后缀中我们介绍了我们所熟知的中缀表达式转为后缀表达式&#xff0c;那么如何通过后缀表达式获得原表达式的值呢&#xff1f;本篇将会参考博文栈的应用-后缀表达式求解介绍计算机是如何基于后缀表达式计算的&#xff1f; 文章目录 1. 后缀表达式求解计算规…

【MySQL】一文带你理解索引事务及其原理

MySQL- 索引事务 文章目录 MySQL- 索引事务索引操作索引原理 事务操作并发执行 索引 索引是一种特殊的文件&#xff0c;包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引&#xff0c;并指定索引的类型&#xff0c;各类索引有各自的数据结构实现。 通俗来…

C++项目实战——基于多设计模式下的同步异步日志系统-④-日志系统框架设计

文章目录 专栏导读模块划分日志等级模块日志消息模块日志消息格式化模块日志消息落地模块日志器模块日志器管理模块异步线程模块 模块关系图 专栏导读 &#x1f338;作者简介&#xff1a;花想云 &#xff0c;在读本科生一枚&#xff0c;C/C领域新星创作者&#xff0c;新星计划导…

新知同享 | Web 开发性能提升,优化体验

更加强大且开放的 Web 可以简化开发工作并支持 AI 一起来看 2023 Google 开发者大会上 Web 开发值得重点关注的升级与成果 了解 Web 如何实现加速开发&#xff0c;更加便捷 精彩大会现场一览 Web 开发不断发展&#xff0c;每年都带来性能提升和功能迭代&#xff0c;开启丰富多…

【多线程】volatile 关键字

volatile 关键字 1. 保证内存可见性2. 禁止指令重排序3. 不保证原子性 1. 保证内存可见性 内存可见性问题: 一个线程针对一个变量进行读取操作&#xff0c;另一个线程针对这个变量进行修改操作&#xff0c; 此时读到的值&#xff0c;不一定是修改后的值&#xff0c;即这个读线…