python讀取數據寫入excel的四種操作


Python對Excel的讀寫主要有:xlrd、xlwt、xlutils、openpyxl、xlsxwriter幾種


xlutils結合xlrd: 操作的是以xls后綴的excel,讀取文件保留原格式:加:formatting_info=True
常用方法:1、打開xls:open_workbook(filePath)
2、 x1.sheet_names() # 獲取所有sheet名字
3、 x1.nsheets # 獲取sheet數量
4、 x1.sheets() # 獲取所有sheet對象
5、 x1.sheet_by_name("test") # 通過sheet名查找
6、 x1.sheet_by_index(3) # 通過索引查找


一、xlutils結合xlrd可以達到修改excel文件目的

import xlrd

from xlutils.copy import copy

workbook = xlrd.open_workbook(u'有趣裝逼每日數據及趨勢.xls',formatting_info=True)

workbooknew = copy(workbook)

ws = workbooknew.get_sheet(0)
ws.write_merge(1,1,2,2,'測試測試',style)
ws.write(3, 0, 'changed!')

workbooknew.save(u'有趣裝逼每日數據及趨勢copy.xls')

 


二、xlwt操作的是以xls后綴的excel

import xlwt

wk = xlwt.Workbook()

sheet = wk.add_sheet('sheet 1')#創建一個sheet1

sheet.write(0,1,'test text')#第0行第一列寫入內容

wk.save('test1.xls')


三、xlsxwriter 操作的是xlsx

import xlsxwriter

workbook = xlsxwriter.Workbook('demo1.xlsx') # 創建工作簿並添加工作表
worksheet = workbook.add_worksheet()

worksheet.write('A1', 'Hello world')# 寫入數據到A1

worksheet.merge_range('B4:D4', 'Merged text', merge_format) #合並單元格,方法2
worksheet.merge_range(3, 1, 3, 3, 'Merged Range', merge_format)

format1 = worksheet.add_format({"bold": True}) #寫入樣式
worksheet.write(row,1,'=SUM(B1:B4)') #寫入公式

workbook.close() # 關閉excel文件

 

四、openpyxl:openpyxl可以對excel文件進行讀寫操作,xlsx


from openpyxl import Workbook

from openpyxl import load_workbook

from openpyxl.writer.excel import ExcelWriter

workbook = load_workbook(u"新歌檢索失敗1477881109469.xlsx")

sheetnames =workbook.get_sheet_names() #獲得表單名字

sheet = workbook.get_sheet_by_name(sheetnames[0])

sheet['A1'] = '47'

workbook.save(u"新歌檢索失敗1477881109469_new.xlsx")

wb = Workbook()

ws = wb.active

ws['A1'] = 4

wb.save("新歌檢索失敗.xlsx")

 

 

 

 

案例

from openpyxl import Workbook

from openpyxl import load_workbook

from openpyxl.writer.excel import ExcelWriter

workbook = load_workbook(u'F:\excel_test.xlsx')

worksheet = workbook.get_sheet_by_name('Sheet1')

worksheet['A1'] = '12321321312'

workbook.save(u'F:\EXCEL_new.xlsx')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM