1. 程式人生 > >Python實戰小程式——Excel操作

Python實戰小程式——Excel操作

Python中的Excel操作        python中的xlrd和xlwt兩個模組可以對Excel進行各項操作。 第一步:安裝模組的方法:
      1.下載一個ez_setup.py的檔案https://pypi.python.org/pypi/setuptools,用來安裝easy_install的;在Installation Instructions中右鍵ez_setup儲存到自己的電腦就行了,並複製檔案到Python的安裝目錄下D:\Python(注意一定要在Python的安裝目錄下,因為下一步會自動下載一個資料夾到這目錄下才能正常使用);
     2.執行cmd,把路徑切換到Python的安裝目錄(輸入d: 回車,再輸入cd Python 回車),然後再輸入ez_setup.py 回車(如果彈出開啟方式的對話方塊,選擇Python開啟就可以了),這時,會自動下載一個資料夾到Python的目錄下,等提示finish即可關閉cmd;
     3.編輯環境變數,把Python的路徑D:\Python和easy_install的路徑D:\Python\Scripts新增到path的變數值中去;
     4.執行cmd,輸入easy_install xlrd,等待片刻,xlrd模組就安裝完成了,在Python中輸入import xlrd 回車,沒提示錯誤,就表示安裝成功了!
(在完成了前四步的基礎上,也可以安裝Python的其他模組,只要在第五步輸入easy_install "模組名"即可)
第二步:瞭解xlrd和xlwt基本操作語句:

讀模組(xlrd):

匯入模組import xlrd

開啟excel  data = xlrd.open_workbook('demo.xls') #注意這裡的workbook首字母是小寫

檢視檔案中包含sheet的名稱data.sheet_names()

得到第一個工作表,或者通過索引順序 或 工作表名稱table = data.sheets()[0]table = data.sheet_by_index(0)table = data.sheet_by_name(u'Sheet1')

獲取行數和列數(實際含有資料的) nrows = table.nrows ncols = table.ncols

獲取整行和整列的值(陣列) table.row_values(i) table.col_values(i)

寫模組(xlwt):

匯入模組import xlwt

新建一個excelMyexcel=xlwt.Workbook#注意這裡的Workbook首字母是!!!

建立一個新的表單worksheet=workbook.add_sheet("demo")

往單元格寫入內容worksheet.write(a,b,value)

儲存excelMyexcel.save('Student')


實戰小程式:

{

    "1":["張三",150,120,100],

    "2":["李四",90,99,95],

"3":["王五",60,66,68]

}

寫入excel如下所示:

 

樣例程式碼:

#coding=utf-8
import xlwt
Myexcel=xlwt.Workbook()
table=Myexcel.add_sheet('Students')
data = {
'1':[u'張三',150,120,100],
'2':[u'李四',90,99,95],
'3':[u'王五',60,66,68]
}
for key in data.keys():
table.write(int(key)-1,0,int(key))
for i in range(0,len(data[key])):
table.write(int(key)-1,i+1,data[key][i])
Myexcel.save('Students.xls')