python對excel的操作

2021-07-10 06:31:21 字數 2702 閱讀 6669

一、安裝xlrd模組

二、使用介紹

1、匯入模組

import xlrd

2、開啟excel檔案讀取資料

data = xlrd.open_workbook('excelfile.xls')

3、使用技巧

獲取乙個工作表

table = data.sheets()[0]          #通過索引順序獲取

table = data.sheet_by_index(0) #通過索引順序獲取

table = data.sheet_by_name(u'sheet1')#通過名稱獲取

獲取整行和整列的值(陣列)

table.row_values(i)

table.col_values(i)

獲取行數和列數

nrows = table.nrows

ncols = table.ncols

迴圈行列表資料

for i in range(nrows ):

print table.row_values(i)

單元格

cell_a1 = table.cell(0,0).value

cell_c4 = table.cell(2,3).value

使用行列索引

cell_a1 = table.row(0)[0].value

cell_a2 = table.col(1)[0].value

簡單的寫入

row = 0

col = 0

# 型別 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error

ctype = 1

value = '單元格的值'

xf = 0

# 擴充套件的格式化

table.put_cell(row, col, ctype, value, xf)

table.cell(0,0)  #單元格的值'

table.cell(0,0).value #單元格的值'

三、demo**

demo**其實很簡單,就是讀取excel資料。

# -*- coding: utf-8 -*- 

import xdrlib ,sys

import xlrd

def open_excel(file= 'file.xls'):

try:

data = xlrd.open_workbook(file)

return data

except exception,e:

print str(e)

#根據索引獲取excel**中的資料 引數:file:excel檔案路徑 colnameindex:表頭列名所在行的所以 ,by_index:表的索引

def excel_table_byindex(file= 'file.xls',colnameindex=0,by_index=0):

data = open_excel(file)

table = data.sheets()[by_index]

nrows = table.nrows #行數

ncols = table.ncols #列數

colnames = table.row_values(colnameindex) #某一行資料

list =

for rownum in range(1,nrows):

row = table.row_values(rownum)

if row:

for i in range(len(colnames)):

return list

#根據名稱獲取excel**中的資料 引數:file:excel檔案路徑 colnameindex:表頭列名所在行的所以 ,by_name:sheet1名稱

def excel_table_byname(file= 'file.xls',colnameindex=0,by_name=u'sheet1'):

data = open_excel(file)

table = data.sheet_by_name(by_name)

nrows = table.nrows #行數

colnames = table.row_values(colnameindex) #某一行資料

list =

for rownum in range(1,nrows):

row = table.row_values(rownum)

if row:

for i in range(len(colnames)):

return list

def main():

tables = excel_table_byindex()

for row in tables:

print row

tables = excel_table_byname()

for row in tables:

print row

if __name__=="__main__":

main()

Python 對Excel操作讀寫

最近公司專案需要寫大量的測試案例,分析案例時發現,案例的前提條件是可以互相排列組合的,人工操作太過繁瑣,可以考慮使用python來實現自動生成案例xlwt xlrd xlutils pip install xlutils 安裝xlutils模組,聯網狀態下cmd直接輸入pip install xlu...

對「python操作excel的坑」指令碼設計的補充

週六發了一點感慨,星期天睡了一覺,重新看了一下這個200行的指令碼。當時只是完成任務即可,回頭看時想到可能後面這類 處理的應用可能會比較常見,有必要做個優化設計,重構一下,作為後面 處理的基礎庫。大概腦子簡單設計一下,暫時想到就這些 屬性 有效表,記錄數 方法 屬性 方法 int readmaini...

對excel進行的操作

pip install xlrd 注釋 xlrd這個庫對於新老版本的 都支援 openpyxl 這個庫只支援新版本的 舊的 不支援 如下 示例 import xlrd book xlrd.open workbook shuju.xlsx print 此時得到的是乙個物件 s book print f...