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

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

在这里插入图片描述


文章目录

    • 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):# 通过"_"分割文件名# 索引第一个元素赋值给变量namename=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_rowdata_row=table.row_values(row)# 如果列表data_row第一个元素为numif(data_row[0]==num):# 将列表第二个元素赋值给namename=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 xlrdpath="/Users/minmin/资料.xlsx"data=xlrd.open_workbook(path)work1=data.sheets()[0]work1Names=work1.col_values(1)import ospathFile="/Users/minmin/Selfie"fileName=os.listdir(pathFile)count=0for name in fileName:if(name!=".DS_Store"):myname=name.split(".")[0]if myname in work1Names:count+=1else:        print(f"{myname}非公司员工")

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

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

建站系列(五)--- 前端开发语言之HTML、CSS、JavaScript

目录 相关系列文章前言一、前端开发与后端开发二、前端语言简介(一)、HTML(二)、CSS(三)、JavaScript 三、学习指导(一)、开发环境(二)、第一个Hello&#xf…

咖啡店小程序:吸引顾客的创新营销手段

近日,“酱香拿铁”的大火让大家再次把目标聚焦在年轻人都喜欢的咖啡上。现在咖啡已经成为年轻一代的社交硬通货,咖啡店也遍地开花。而随着移动互联网的快速发展,咖啡店小程序已经成为了各大咖啡店主的选择,因为它提供了便捷的方式…

BUUCTF rip 1

使用linux的file命令查看基本信息 64位 使用IDA64位进行反编译 看到gets就肯定有栈溢出 能看到有一个 _system函数,改函数能执行系统命令 既然反编译有这个函数说明有地方调用了他 果然在一个fun函数中有调用,执行的命令是 /bin/sh 也就是一个后门函数&…

C# Linq源码分析之Take(五)

概要 本文在C# Linq源码分析之Take(四)的基础上继续从源码角度分析Take的优化方法,主要分析Where.Select.Take的使用案例。 Where.Select.Take的案例分析 该场景模拟我们显示中将EF中与数据库关联的对象进行过滤,然后转换成Web…

Spring Cloud:构建微服务的最佳实践

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

Java 基于 SpringBoot 的酒店管理系统,附源码和数据库

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 文章目录 一、前言介绍二、系统结构三、系统详细实现3.1用户信息管理3.2会员信息管理3.3客房信息管理3.4收藏…

MySQL——DQL union合并、limit限制与DDL建表和删表

一、Union 合并 union:是实现两个查询结果的合并。 例如:当我们查询员工名字为manager 和 salesman的员工名字和 工作? select e.ename,e.job from emp e where e.jobmanager or e.job salesman; select e.ename,e.job from emp e where e.job in(man…

Notpad++常用正则表达式替换案例集锦

1、在每行的开头加上单引号 2、在每行的结尾加上单引号 3、“删除”某个关键字之前字符串 原始字符串: 注:仅保留含有"[条件日志]:"之后的内容,“日志:”前面的内容“删除”掉,即替换为“”。 4、“删除”某个关键字…

浅谈OPenGL中的纹理过滤

纹理图像中的纹理单元和屏幕上的像素几乎从来不会形成一对一的对应关系。如果程序员足够细心,确实可以实现这个效果,但这需要在对几何图形进行纹理贴图时进行精心的计划,使出现在屏幕上的纹理单元和像素能够对齐(实际上在用OPenGL…

搭建HTTPS服务器

HTTPS代理服务器的作用与价值 HTTPS代理服务器可以帮助我们实现网络流量的转发和加密,提高网络安全性和隐私保护。本文将指导您从零开始搭建自己的HTTPS代理服务器,让您更自由、安全地访问互联网。 1. 准备工作:选择服务器与操作系统 a. 选…

Java从入门到精通-数组(二)

4.数组的基本操作 数组的基本操作包括遍历数组、填充替换数组元素、对数组进行排序、复制数组以及查询数组中的元素。 • 4.1 遍历数组 遍历数组是访问数组中所有元素的过程,通常使用循环完成。 使用 for 循环遍历数组: int[] numbers {1, 2, 3, 4…

【测试开发】Mq消息重复如何测试?

本篇文章主要讲述重复消费的原因,以及如何去测试这个场景,最后也会告诉大家,目前互联网项目关于如何避免重复消费的解决方案。 Mq为什么会有重复消费的问题? Mq 常见的缺点之一就是消息重复消费问题,产生这种问题的原因是什么呢…

Spring+MyBatis使用collection标签的两种使用方法

目录 项目场景: 实战操作: 1.创建菜单表 2.创建实体 3.创建Mapper 4.创建xml 属性描述: 效率比较: 项目场景: 本文说明了Spring BootMyBatis使用collection标签的两种使用方法 1. 方法一: 关联查询 2. 方法…

计算机网络基础知识(非常详细)

1. 网络模型 1.1 OSI 七层参考模型 七层模型,亦称 OSI(Open System Interconnection)参考模型,即开放式系统互联,是网络通信的标准模型。一般称为 OSI 参考模型或七层模型。 它是一个七层的、抽象的模型体&#xff…

【刷题篇】贪心算法(一)

文章目录 分割平衡字符串买卖股票的最佳时机Ⅱ跳跃游戏钱币找零 分割平衡字符串 class Solution { public:int balancedStringSplit(string s) {int lens.size();int cnt0;int balance0;for(int i0;i<len;i){if(s[i]R){balance--;}else{balance;}if(balance0){cnt;}}return …

PDF转Word的方法分享与注意事项。

PDF和Word是两种常用的文档格式&#xff0c;它们各有优点&#xff0c;适用于不同的场景。然而&#xff0c;有时候我们需要将PDF转换为Word&#xff0c;以便更好地进行编辑和排版。本文将介绍几种常用的PDF转Word的方法&#xff0c;并分享一些注意事项。 一、PDF转Word的方法 使…

【系统设计系列】数据库

系统设计系列初衷 System Design Primer&#xff1a; 英文文档 GitHub - donnemartin/system-design-primer: Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. 中文版&#xff1a; https://github.com/donnemarti…

飞行动力学 - 第18节-全机航向稳定性与隐身性 之 基础点摘要

飞行动力学 - 第18节-全机航向稳定性与隐身性 之 基础点摘要 1. 全机航向静稳定性2. 垂尾与隐身3. 参考资料 1. 全机航向静稳定性 机翼贡献 上反角 复杂、极小幅降低 后掠角 增加稳定性 机身贡献 降低稳定性 尾翼贡献 航向静稳定性的最大来源 平尾 类似机翼贡献 垂尾 最大来…

RESP无法连接linux上redis问题

1.本机无法ping通虚拟机IP 没有打开服务&#xff08;这只是无法ping通虚拟机的一种原因&#xff09; 其他原因可以参考 虚拟机ping不通的几种原因及解决办法_虚拟机ping不通主机_在键盘上弹钢琴的菜菜的博客-CSDN博客 2.未关闭linux系统的防火墙导致无法连接redis 查看防火墙…

【数据结构】绪论

绪论 1.1数据结构的基本概念1.1.1 基本概念和术语1.1.2数据结构的三要素 1.2 算法与算法评价 1.1数据结构的基本概念 1.1.1 基本概念和术语 数据 数据是信息的载体&#xff0c;是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别 和处理的符号的集合。数…