Tyl*_*ell 1 python xlrd xlwt python-3.x xlsxwriter
我正在尝试找到一个好的方法来查看 Excel 电子表格是否存在,如果它确实使用它,如果没有创建一个新的 Excel 文件。请参阅下面的代码片段。奇怪的是,每次我运行它时,它都会在第一次尝试时崩溃。如果我再次运行它,它就会通过。有什么想法吗?我认为这与 xlrd 与 xlwt 有关,但尚未找到解决方案。所有模块都是最新的。
import pandas as pd
import xlsxwriter
from xlrd import open_workbook
import xlwt
import os.path
fname=r'testmonthlyz.xlsm'
fname2=r'testmonthlyoutput2.xlsx'
#workbook = xlsxwriter.Workbook(fname2)
if os.path.isfile(fname2):
print('old file')
book=open_workbook(fname2)
else:
print('new file')
book=xlwt.Workbook(fname2)
ws = book.add_sheet('Tested')
sheet_names=book.sheet_names()
Run Code Online (Sandbox Code Playgroud)
我相信崩溃的原因是当您在该else
部分中时,您有一行book=xlwt.Workbook(fname2)
表示书籍类型Workbook
没有名为 的属性sheet_names()
。当您在里面
使用时,书籍类型是具有属性的。
我对此的解决方案,尽管这不是最好的方法,但我认为它会解决您正在处理的问题..更改以下行book = open_workbook(fname2)
if
Book
sheet_names()
import pandas as pd
import xlsxwriter
from xlrd import open_workbook
import xlwt
import os.path
fname=r'testmonthlyz.xlsm'
fname2=r'testmonthlyoutput2.xlsx'
workbook = xlsxwriter.Workbook(fname2)
if os.path.isfile(fname2):
print('old file')
book=open_workbook(fname2)
else:
print('new file')
workbook2=xlwt.Workbook(fname2)
ws = workbook2.add_sheet('Tested')
workbook2.save(fname2)
book = open_workbook(fname2)
sheet_names=book.sheet_names()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14635 次 |
最近记录: |