如何将列表值传入Python的load_workbook加载对应Excel文件
解决方法:动态生成Excel文件名并逐个加载
嘿,这事儿其实很简单,咱们直接把循环里的每个ticket值和.xlsx后缀拼接起来就能搞定啦!
先理清楚你的需求:你有一个tickets列表,每个元素对应一个Excel文件的前缀,现在要把固定的x.xlsx替换成对应的ticket值.xlsx。
修改后的完整代码
from xlwt import Workbook import openpyxl as xl # 你的tickets列表 tickets = ['ITSVC-YY160044392', 'ITSVC-YY170045022', 'ITSVC-YY170045032'] # 循环遍历每个ticket项 for ticket in tickets: # 用f-string动态拼接完整的Excel文件名 excel_file = f"{ticket}.xlsx" # 加载对应的Excel文件 wb = xl.load_workbook(excel_file) b = wb.active # 这里可以添加你对每个Excel文件要执行的后续操作,比如读取单元格、修改内容等
几个小细节说明:
- 我看到你原来的代码里写的是
for x in cdc_tickets():,如果cdc_tickets()是返回这个tickets列表的函数,那把循环改成for ticket in cdc_tickets():就可以,逻辑是一样的。 - 除了f-string,你也可以用字符串拼接的老方法:
excel_file = ticket + ".xlsx",效果完全相同,选你习惯的方式就行。 - 如果你的Excel文件不在脚本的同一目录下,记得加上完整路径,比如
f"./attachments/{ticket}.xlsx"(相对路径)或者绝对路径,避免找不到文件的报错。
内容的提问来源于stack exchange,提问作者Nav
相关产品推荐
相关产品推荐

