上图为读取的目标文件 ---------------------------------------------------------------------------------
- # coding=utf-8
- '''
- : 第一步: 最简单的读取文件 Demo, 读取文件中的某个值, 和写入某个单元格的值
- Excel wordbook 工作簿 ->> 确定 sheet 表单 --->cell 单元格
- pip install openpyxl
- '''
- # 终极目标 读取 successed
- #
- from openpyxl import load_workbook
- # 1. 打开工作簿
- work_book = load_workbook('test_data.xlsx')
- # 2. 确定文件中的 sheet 页的名字
- sheet = work_book['test_case']
- # 3. 确定单元格的位置 cell
- print(sheet.cell(2, 6).value)
- # 4. 写入值到 Excel 的单元格 -> 写入数据的时候, 必须先关闭文件
- sheet.cell(4, 7).value = '重新 biubiubiu...'
- work_book.save('test_data.xlsx')
- # coding=utf-8
- """: 进阶: 读取文件内所有的行, 列中的数据"""
- from openpyxl import load_workbook
- class DoExcel:
- def __init__(self, filepath, sheet_name):
- self.filepath = filepath
- self.sheet_name = sheet_name
- # : 读取 Excel 所有行, 列的测试数据
- def read_data(self):
- wb = load_workbook(self.filepath)
- sheet_ = wb[self.sheet_name]
- # : 行数是 2, 列是 6 列
- # : 先把第二行的数据读到一个列表里面
- test_data = []
- # 2,1 2,2 2,3 2,4
- # 循环获取第二行每一列的值
- '''第一个 for 遍历一次的时候, 里面的 for 要遍历 6 次, 2,1 2,3 2,4'''
- for row in range(2, sheet_.max_row + 1): # range(2,7)-> 因为 range 函数是取左不取右, So 要 max+1
- list_1 = []
- for column in range(1, 7): #
- list_1.append(sheet_.cell(row, column).value) # 行, 列的值
- test_data.append(list_1)
- print(test_data)
- return test_data
- def write_data(self): # 写入测试结果
- pass
- if __name__ == '__main__':
- t = DoExcel('test_data.xlsx', 'test_case')
- t.read_data()
- one_data = t.read_data()[0]
- print(one_data)
来源: http://www.bubuko.com/infodetail-2647465.html