python xlwt模块生成excel文件并写入数据 xlrd读取数据
生活随笔
收集整理的這篇文章主要介紹了
python xlwt模块生成excel文件并写入数据 xlrd读取数据
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
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_responseimport xlwt,xlrd # 生成寫入
def taskinfo_excel_fun():wb = xlwt.Workbook() # 創(chuàng)建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])
# 也可以指定數(shù)據(jù)的格式樣式
# style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00')
# style1 = xlwt.easyxf(num_format_str='D-MMM-YY')
# sheet.write(0, 0, 1234.56, style0)
# sheet.write(1, 0, datetime.now(), style1) 結(jié)果樣式 見圖三
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)) # 直接在前端頁面生成要下載的文件
# 讀取
def taskinfo_read_excel(file_path2):
import xlrd
book = xlrd.open_workbook(file_path2) # 讀取excel文件對象
sheet_name = book.sheet_names() # ['A Test Sheet'] 獲取所有的表名 以列表形式
print(sheet_name)
sheet = book.sheet_by_name(sheet_name[0]) # 根據(jù)表名獲取表對象
sheet = book.sheet_by_index(0) # 根據(jù)索引獲取表對象
nrows = sheet.nrows
ncols = sheet.ncols # 獲取一共有 多少行和列 有數(shù)據(jù)
print(nrows)
print(ncols)
row_data = sheet.row_values(0) # 獲取某行的所有數(shù)據(jù) 列表形式 ['姓名', '性別', '年齡', '身高']
col_data = sheet.col_values(0) # 列 數(shù)據(jù) ['姓名', 1.0, 2.0, 3.0]
print(row_data)
print(col_data)
cell_value = sheet.cell_value(3, 0) # 獲取指定單元格數(shù)據(jù):3.0
print(cell_value)
cell_value = sheet.cell(3,0).value # 獲取數(shù)據(jù)
cell_value = sheet.row(3)[0].value # 獲取數(shù)據(jù)
cell_value = sheet.col(0)[3].value #獲取數(shù)據(jù)
cell_value2 = sheet.cell(3, 0) # number:3.0 包含數(shù)據(jù)的類型
print(cell_value2)
圖一:頁面生成文件
?圖二:打開文件后
?
?圖三:
?
轉(zhuǎn)載于:https://www.cnblogs.com/We612/p/10371236.html
總結(jié)
以上是生活随笔為你收集整理的python xlwt模块生成excel文件并写入数据 xlrd读取数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [数论]Gcd/ExGcd欧几里得学习笔
- 下一篇: Spring MVC 入门笔记