在进行操作前,我们先熟悉一下excel表格的基本术语:
这里我们使用openpyxl读取数据。
查看每个工作簿包含的工作表
import openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
# 从工作簿查看工作表
print(wb.sheetnames)
也可以通过循环的形式打开工作表
import openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
# 从工作簿查看工作表
for sheet in wb:
print(sheet.title)
假如要想增加工作表,可以通过下面的程序实现
import openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
# 增加表单
Mysheet = wb.create_sheet("保育猪成本")
Mysheet2 = wb.create_sheet("育肥猪成本")
print(wb.sheetnames)
读取某个单元格内容
import openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
ws = wb.active
# 读取表单对象
print(ws['A1'])
# 读取单元格的内容
print(ws['A1'].value)
上面的程序未表示出行列坐标,如果想表示“第X行X列是X”,使用下面方法
import openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
ws = wb.active
c = ws['A1']
# 读取单元格的第一种方法
print('row {} column {} is {}'.format(c.row, c.column, c.value))
# 读取单元格的第一种方法
print(ws.cell(row=1, column=3).value)
# 读取一行多个单元格
for i in range(1,8):
print(ws.cell(row=i, column=3).value)
遍历某行或者某列的内容
通过下面的程序可以读取工作表中第五列的所有内容
mport openpyxl
wb = openpyxl.load_workbook('examble.xlsx')
ws = wb.get_sheet_by_name("原始数据")
for i in range(5, ws.max_row+1):
name = ws.cell(row=i, column=5).value
print(name)
总结:
[1] import openyxl
[2] wb = openpyxl.load_wookbook("文件名")
[3] ws = wb.active or ws = wb.get_sheet_by_name(sheettitle)
[4] ws = ['A1'] or ws.cell(row=3, column=2)
参考资料
【用Python处理Excel数据,中文全基础系列教程】