有两个脚本p1.py和p2.py
p1.py是这样的
if (day=='01'): /*where day=time.strftime("%d")*/
wb=p2.py(day)
for i in range(1,day_list+1): /* genrates sheet equal to number of days in a month)
wb.copy_worksheet(wb['temp'])
ws=wb['temp Copy']
ws.title=str(i)
现在p2.py具有使用openpyxl加载excel工作簿的函数:
wb=load_workbook(filename='.....\....\abc.xlsx')
return wb
现在在p1.py中:
if namesheet in wb.sheetnames: /* `namesheet:
chk=day[:1]
if(chk=='0'):
namesheet=day[1:]
else
namesheet=day */
/*do something */
这里,在if条件下,我得到错误:
name 'wb' is not defined
Traceback (most recent call last):
File "E:\AshimTest\myscript\Auto_Report.py", line 133, in <module>
if namesheet in wb.sheetnames:
NameError: name 'wb' is not defined
有人能帮忙吗?我想世界银行只是对第一国际单项体育联合会的声明有所保留
我是python新手,这个问题怎么解决
哦!!!多么愚蠢的错误。加载模板的if语句只在每月的第一天起作用。这里的逻辑是错误的,因为在剩下的日子里,模板没有加载,因为它没有输入if语句,因此wb没有值,也没有声明,所以没有定义
或者,您可以尝试从“p1.py”中的“p2.py”导入load\u工作簿函数,例如:
在那之后,已经在p1.py运行了
相关问题 更多 >
编程相关推荐