如何基于Python制作在Excel中批量查詢姓名的桌面程序?
使用xlrd庫讀取excel
xlrd,作為python第三方庫,可以從excel電子表格中檢索信息。
通俗點講,你可以用python讀取excel文件里的任何數據。
我們新建一個excel表格用于案例講解:
首先,安裝xlrd庫(記得在命令行輸入哦)
pip install xlrd
導入xlrd庫
import xlrd
讀取excel文件,即剛剛創建的excel表格
# 給出excel文件絕對路徑
loc = ("path of file")
# 打開工作表
wb = xlrd.open_workbook(loc)
# 這里讀取的是第一個sheet
sheet = wb.sheet_by_index(0)
打印excel表格第一行第一列
>>> print(sheet.cell_value(0, 0) )
'NAME'
看看這個數據表有幾行幾列
>>> print(sheet.nrows) # 行數
4
>>> print(sheet.ncols) # 列數
3
打印所有的列標簽
>>> for i in range(sheet.ncols):
print(sheet.cell_value(0, i))
NAME
SEMESTER
ROLL NO
打印所有的行標簽
>>> for i in range(sheet.nrows):
print(sheet.cell_value(i, 0))
NAME
ALEX
CLAY
JUSTIN
打印第一行內容
>>> print(sheet.row_values(1))
['ALEX', 4.0, 2011272.0]
使用xlwt寫入excel對excel進行寫入,需要用到python的另一個第三方庫-xlwt
xlwt能夠對excel文件進行寫入和修改,你可以設定條件檢索數據并修改,很方便的重復大量工作。
安裝方法依舊是pip
pip install xlwt
導入xlwt
import xlwt
from xlwt import Workbook
向excel中寫入數據
# 創建workbook
wb = Workbook()
# 使用add_sheet函數創建新的sheet
sheet1 = wb.add_sheet('Sheet 1')
# 寫入數據,參數分別為行、列、數據
sheet1.write(1, 0, 'ISBT DEHRADUN')
sheet1.write(2, 0, 'SHASTRADHARA')
sheet1.write(3, 0, 'CLEMEN TOWN')
sheet1.write(4, 0, 'RAJPUR ROAD')
sheet1.write(5, 0, 'CLOCK TOWER')
sheet1.write(0, 1, 'ISBT DEHRADUN')
sheet1.write(0, 2, 'SHASTRADHARA')
sheet1.write(0, 3, 'CLEMEN TOWN')
sheet1.write(0, 4, 'RAJPUR ROAD')
sheet1.write(0, 5, 'CLOCK TOWER')
# 保存到excel表格
wb.save('xlwt example.xls')
看一下生成的excel吧!
如何給excel中的單元格內容添加格式呢?比如說我想加粗、標紅
# 先導入xlrt庫
import xlwt
# 創建workbook
workbook = xlwt.Workbook()
# 創建sheet
sheet = workbook.add_sheet("Sheet Name")
# 給單元格內容添加格式:加粗、標紅
style = xlwt.easyxf('font: bold 1,color: red')
# 在單元格中寫入數據
sheet.write(0, 0, 'SAMPLE', style)
# 保存excel
workbook.save("sample.xls")
看看結果吧!