python办公自动化之一:openpyxl读取表格数据

一、认识表格的基本组成

1.工作簿(workbook)

2.表单(worksheet)

3.行(横着的)、列(竖着的)(row,column)

4.单元格(cell)

二、安装openpyxl库

pip install openpyxl

三、读取工作簿

import openpyxl
wb = openpyxl.load_workbook('XXX.xlsx')

四、操作表单

1.打印所有的表单名称,储存在列表中

print(wb.sheetnames)

2.遍历所有表单

for sheet in wb:
    print(sheet.title)

3.新建一个表单

wb.create_sheet('mySheet')

4.根据表单名称读取表单

sheet1 = wb.get_sheet_by_name('Sheet1')   #不推荐使用
sheet2 = wb['sheet2']
ws = wb.active()   #活跃表单

五、读取单元格

1.根据单元格坐标读取单元格

print(ws['A1'])

2.指定行列读取单元格

print(ws.cell(row=1, column=2))

3.读取单元格的属性

print(ws['A1'].value)      #读取单元格的值
print(ws['A1'].row)        #读取的表格的行数
print(ws['A1'].column)     #读取的表格的列数
print(ws['A1'].coordinate) #读取的表格的行列数。输出的值为'A1'

4.遍历整列

colC = ws['C']   #遍历C列
for cell in colC:
    print(cell.value)
colrange = ws['C:D']    #切片遍历C-D列
for col in colrange:
    for cell in col:
        print(cell.value)

5.遍历整行

row6 = ws[6]   #遍历第6行
for cell in row6:
    print(cell.value)
rowrange = ws['2:5']    #切片遍历2-5行
for row in rowrange:
    for cell in row:
        print(cell.value)

6.遍历某个区间

for row in ws.iter_rows(min_row=5,max_row=34, min_col=1, max_col=5):
    for cell in row :
        print(cell.value)

7.全表遍历

table = tuple(ws.columns)    #全表遍历(一列一列的遍历)  ws.rows为一行一行遍历
for i in table:
    for cell in i:
        print(cell.value)

8.指定范围遍历

cell_range= ws['A1:C3']   
for i in cell_range:
    for cell in i:
        print(cell.coordinate,cell.value)

9.获取最大行、最大列

ws.max_row
ws.max_column

10.字母与数字相互转化

from openpyxl.utils import get_column_letter, column_index_from_string
print(get_column_letter(99))    #输出结果AU
print(column_index_from_string('DC'))    #输出结果107
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容