python中一般使用 xlwt (excel write)来生成Excel文件(可以控制单元格格式),用 xlrd 来读取Excel文件,用xlrd读取excel是不能对其进行操作的.
1、xlrd.open_workbook()方法返回xlrd.Book类型,是只读的,不能对其进行操作。
2、xlwt.Workbook()返回的xlwt.Workbook类型的save(filepath)方法可以保存excel文件。
下面展示一下在flask项目中生成excel文件
代码Demo:
from flask imprt send_file, make_response def taskinfo_excel_fun(): wb = xlwt.Workbook() # 创建excel文件 sheet = wb.add_sheet('My Sheet') # 为第一个表命名 content = [ ['姓名', '性别', '年龄', '身高'], [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], ] for i in range(len(content)): for j in range(len(content[i])): sheet .write(i, j, content[i][j]) file_path = os.path.join(os.getcwd(), UPLOAD_FOLDER) # 指定要保存的目录 if not os.path.exists(file_path): # 如果目录不存在,生成 os.mkdir(file_path) file_path2 = file_path+'example.xls' # 文件的绝对路径 wb.save(file_path2) return make_response(send_file(file_path2)) # 直接在前端页面生成要下载的文件
图一:页面生成文件
图二:打开文件后