栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python 实现QQ群接龙统计未接龙成员名单

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python 实现QQ群接龙统计未接龙成员名单

在学校当班长有时候需要使用QQ群接龙统计,但这个该死的QQ群接龙没法自定义接龙格式而且设置填写人名单还挺麻烦,对我统计未接龙成员名单造成了挺大的困扰(毕竟不想麻烦同学在名字前加个学号什么的,就只让他们接龙个名字就可_(:з」∠)_)

所以我拿半小时写了个小程序来帮我统计一下名单(我真是闲的蛋疼)

代码如下

import xlrd as xlrd
import re

finish_data = xlrd.open_workbook('work/finish.xlsx')
source_data = xlrd.open_workbook('work/source.xlsx')

sheet = finish_data.sheet_by_name('Sheet1')
source_sheet = source_data.sheet_by_name('Sheet1')

# print(sheet.ncols)

# print(sheet.col_values(0))

finish_name_list = sheet.col_values(0)
source_name_list = source_sheet.col_values(0)

print(source_sheet.nrows)


# 初始化已接龙名单,返回列表
def initialize_list(name_list):
    name = []
    pattern = re.compile('[u4e00-u9fa5]{2,3}')

    for i in range(sheet.nrows):
        name.append(pattern.search(name_list[i]).group(0))

    return name


# 初始化所有需接龙名单,返回字典
def initialize_dict(dest_sheet, name_list):
    name = {}
    pattern = re.compile('[u4e00-u9fa5]{2,3}')

    for i in range(dest_sheet.nrows):
        new_dict = {pattern.search(name_list[i]).group(0): 0}
        name.update(new_dict)
    return name


source_name = initialize_dict(source_sheet, source_name_list)
finish_name = initialize_list(finish_name_list)

for i in range(sheet.nrows):
    source_name[finish_name[i]] = 1  # 完成的人 字典的值为1

# print(source_name.items())

for name in source_name:
    if source_name[name] == 0:
        print(name)

只需要两个表格就可以统计出来了,第一个是需接龙人的名单(我排成一列),第二个是已接龙人的名单(这个QQ可以直接导出,我也只排成一列)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/767886.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号