鱼C论坛

 找回密码
 立即注册
查看: 72|回复: 1

[作品展示] 用py来确定谁没有接龙

[复制链接]
发表于 2024-12-5 10:14:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import openpyxl
wb = openpyxl.load_workbook(r"C:\Users\22301\Desktop\接龙者名单.xlsx")
ws = wb.get_sheet_by_name('Sheet1')
#以上步骤是导入excel文件,确定接龙的人
res = []
for each_row in ws.rows:
    res.append(each_row[0].value)
#这一步是把接龙的人名字导入一个列表
wb = openpyxl.load_workbook(r"C:\Users\22301\Desktop\24生医通讯录.xlsx")
wss = wb.get_sheet_by_name('Sheet1')
resu = []
for each_row in wss.rows:
        resu.append(each_row[0].value)
#这里同上 把全部人名称导入列表

temp_resu = resu.copy()  # 对resu进行浅拷贝
for i in temp_resu:
    if i in new_result:
        resu.remove(i)
#这一步是比对接龙者与全部人的 如果接龙了,就删去名字
print(resu)
#最后剩下的就是没接龙的人的了


#刚学py,各位大佬多多包容
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-12-5 10:14:31 | 显示全部楼层
你好!看起来你正在尝试用Python来找出没有参与接龙的人。你的代码有一些小问题,我来帮你调整一下。
import openpyxl

# 加载接龙者名单
wb = openpyxl.load_workbook(r"C:\Users\22301\Desktop\接龙者名单.xlsx")
ws = wb['Sheet1']  # 使用更推荐的方式获取工作表
res = []
for each_row in ws.iter_rows(min_row=1, max_col=1, values_only=True):
    res.append(each_row[0])

# 加载全部人名单
wb = openpyxl.load_workbook(r"C:\Users\22301\Desktop\24生医通讯录.xlsx")
wss = wb['Sheet1']
resu = []
for each_row in wss.iter_rows(min_row=1, max_col=1, values_only=True):
    resu.append(each_row[0])

# 找出没有接龙的人
temp_resu = resu.copy()
for i in temp_resu:
    if i in res:
        resu.remove(i)

# 输出没有接龙的人
print(resu)

### 主要修改点:
1. 使用 `ws['Sheet1']` 代替 `get_sheet_by_name`,因为后者在新版 `openpyxl` 中已被弃用。
2. 使用 `iter_rows` 方法来获取行数据,并设置 `values_only=True` 以直接获取单元格的值。
3. 确保在循环中访问 `each_row[0]`,因为 `iter_rows` 返回的是一个元组。

这样修改后,代码应该可以正常运行,找出没有参与接龙的人。希望这对你有帮助!如果有其他问题,欢迎随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-31 01:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表