python-xlrd,xlwt excelファイルの読み書き

10727 ワード

xlrd,xlwt excelファイルの読み書き
あまり話さないで、直接コードをつけて、それから説明します.
import xlwtimport xlrd
import numpy as np
path="C:/learn_data/"
#Excel  
#  xls   
wb = xlwt.Workbook()
print(wb) 
wb.add_sheet('first_sheet', cell_overwrite_ok=True) 
wb.get_active_sheet() 
ws_1 = wb.get_sheet(0) 
print(ws_1) 
ws_2 = wb.add_sheet('second_sheet')
data = np.arange(1, 65).reshape((8, 8))
print(data) ws_1.write(0, 0, 100) 
for c in range(data.shape[0]):    
    for r in range(data.shape[1]):        
         ws_1.write(r, c, int(data[c, r]))        
         ws_2.write(r, c, int(data[r, c]))
wb.save(path + 'workbook.xls') 
#  xlsx    
#       
book = xlrd.open_workbook(path + 'workbook.xls')
print(book) 
print(book.sheet_names())
sheet_1 = book.sheet_by_name('first_sheet')
sheet_2 = book.sheet_by_index(1)
print(sheet_1)
print(sheet_2.name) 
print(sheet_1.ncols, sheet_1.nrows) cl = sheet_1.cell(0, 0)print(cl.value) 
print(cl.ctype) 
print(sheet_2.row(3))
print(sheet_2.col(3)) 
print(sheet_1.col_values(3, start_rowx=3, end_rowx=7)) print(sheet_1.row_values(3, start_colx=3, end_colx=7)) 
for c in range(sheet_1.ncols):    
    for r in range(sheet_1.nrows):        
        print ('%i' % sheet_1.cell(r, c).value,)    
    print

上記コードwb=xlwt.Workbook()は、ワークブックオブジェクトを作成し、ワークブックにワークシートwbを追加することができます.add_sheet(‘first_sheet’, cell_overwrite_ok=True)
cell_overwrite_OK=True)は、テーブルの書き込みが可能であることを示します
wb.get_active_sheet()は、現在のアクティブなテーブルを取得することを示します.
ws_1 = wb.get_sheet(0)はシーケンス番号でテーブルを取得し、0は最初のテーブルを表す
ws_2 = wb.add_sheet('second_sheet')は、テーブルを直接作成し、オブジェクトに値を付けて直接操作できます.
ws_1.write(r,c,int(data[c,r]))は、r行目、c列目に対して書き込みを行う
wb.save(path+‘workbook.xls’)保存ワークブック
book = xlrd.open_workbook(path+‘workbook.xls’)#ワークブックを開く
book.sheet_names()#ワークブックのテーブル名を返すsheet_1 = book.sheet_by_name(‘first_sheet’)ワークシート名からテーブルsheet_を取得2 = book.sheet_by_Index(1)インデックスによるテーブルの取得
sheet_1.cell(r, c).valueは、r行目c列目の値print(sheet_2.row(3))を返し、4行目print(sheet_2.com(3))を出力します.