python-openpyxl操作excel


安裝openpyxl插件

1.解壓openpyxl

2.cmd命令行,進入到目錄,招到setup.py文件,執行命令:python setup.py install

cmd ->
d: ->
cd D:\py libs\openpyxl-2.4.1
python setup.py install

 

查看是否安裝成功

cmd

python

import 模塊名

 

操作excel步驟:

1.知道excel的地址

2.獲取excel中工作表(sheet)

3.再通過sheet,進行excel的操作(添加數據\查詢數據\刪除數據\修改數據)

4.該保存的就保存

 

 

初始excel表格

 

對上面的表格,進行操作:

獲取excel中工作表的操作權限

import openpyxl
import time

'''
openpyxl 只支持xlsx后綴的名稱
'''

path = 'D:/python workspace/excel/excel.xlsx'

#打開excel文件,返回標記位給wb
wb = openpyxl.load_workbook(path)

print("獲取工作簿所有工作表名:",wb.get_sheet_names())

sheet = wb.get_sheet_by_name('main')
print("獲取指定的工作表",sheet.title)

sheet2 = wb.get_active_sheet()
print("獲取活動的工作表",sheet2.title)

結果:

獲取工作簿所有工作表名: ['main', 'Sheet2', 'Sheet3']
獲取指定的工作表 main
獲取活動的工作表 main

 

接着上面,操作單元格,獲取單元格的數據

#獲取單元格數據,main工作表的單元格A1數據
print("獲取單元格A1值",sheet['A1'].value)
#下面這個寫法的好處方便用for循環遍歷,通過行和列
print("獲取單元格A1值",sheet.cell(row=1,column=1).value)

結果:

獲取單元格A1值 名稱
獲取單元格A1值 名稱

 

接着上面,數據寫入單元格

#sheet.cell(row = 5,column = 3).value = "test"
#sheet['B10'] = "test1"

 

獲取最大有效數據的行數和列數

#獲得是單元格有數據的最大列數和行數
print("獲取最大列數",sheet.max_column)
print("獲取最大行數",sheet.max_row)

結果:

獲取最大列數 4
獲取最大行數 2

 

循環取值

獲取某一行的值

 

#第一行中所有的值
for i in sheet["1"]:
    print(i.value)

 

結果:

名稱
功能
自動化
性能

獲取某一列所有的值

#第C列中所有的值
for i in sheet["C"]:
    print(i.value)

結果:

自動化
62

 

遍歷整張表的值,注意+1 

 

#遍歷整張表的值,注意+1
#for循環,每行一行一行的獲取
for i in range(1,sheet.max_row+1):
    for j in range(1,sheet.max_column+1):
        print(sheet.cell(row = i,column = j).value)

名稱
功能
自動化
性能
數字
52
62
72

 

操作完成后,注意保存

#指定路徑保存,path表示指定的路徑和新的名稱       
#wb.save(path)
#沒有path,就是原地址覆蓋保存wb.save(path)

最終的結果:

 


免責聲明!

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



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