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可以直接导出,我也只排成一列)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值