如何在openpyxl中使用占位符动态指定Excel单元格位置?
你现在的写法里'A{i}'是普通字符串,Python不会自动替换其中的{i}为变量值,调整方法很简单:
- 给字符串加前缀
f,用Python的f-string语法即可自动解析{}内的变量为实际值 - 额外注意Excel行号从1开始,原代码的
range(20)会生成0到19的整数,会出现A0这种无效的单元格标识,建议把范围改成range(1,21)生成1到20的行号
调整后的完整代码如下:
from openpyxl import Workbook wb = Workbook() ws = wb.active for i in range(1, 21): ws[f'A{i}'] = 'test' wb.save('example.xlsx')
如果不习惯用f-string,也可以用字符串拼接的写法实现同样效果:
ws['A' + str(i)] = 'test'
内容的提问来源于stack exchange,提问作者user14857618
相关产品推荐
相关产品推荐

