python之将读取excle并将列表转为字典
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | import openpyxl # 第一步打开工作薄(读取excel文件中的数据保存为工作簿) workbook = openpyxl.load_workbook(r "C:\Users\Administrator\Desktop\11.xlsx" ) print (workbook) # 第二步,选中表单对象 sheet = workbook[ "login" ] # excle对应sheet名称 print (sheet) # 第三步:1.通过表单选中表格读取数据 data = sheet.cell(row = 2 , column = 3 ) print (data) print (data.value) # 2.写入内存数据 sheet.cell(row = 2 , column = 6 , value = 7 ) # 写入内存数据,需要保存才会生效 workbook.save(r "C:\Users\Administrator\Desktop\11.xlsx" ) # 文件一定要关掉 # 3获取最大的行和列,不要随便在excle中写入空格,否者会增加对应的空格 print (sheet.max_row) print (sheet.max_column) # 4.rows:按行获取所有的格子对象,每一行的格子放入一个元组 # print(list(sheet.rows)) # 读取excle的类 ''' 封装为了使用更加方便,提高代码的重用率 ''' class ReadExcle( object ): def __init__( self , filname, sheet_name): """ :param filname: excle的文件名称 :param sheet_name: sheet的名称 """ self .filename = filname self .sheet_name = sheet_name def open ( self ): self .wb = openpyxl.load_workbook( self .filename) self .sh = self .wb[ self .sheet_name] def save( self ): """ 报错工作簿的方法 :return: """ self .wb.save( self .filename) self .wb.close() # 主要作用释放内存 def read_data( self ): """ 读取数据 #1打开工作簿,选中表单 :return: """ self . open () # 获取最大的行 max_row = self .sh.max_row max_colmn = self .sh.max_column datas = [] for i in range ( 1 , max_row + 1 ): date = [] for j in range ( 1 , max_colmn + 1 ): date1 = self .sh.cell(i, j).value date.append(date1) datas.append(date) title = datas[ 0 ] print ( "data===" , datas) cases = [] for data in datas[ 1 :]: case = dict ( zip (title, data)) cases.append(case) return cases def write_data( self ): pass excel = ReadExcle(r "C:\Users\Administrator\Desktop\12.xlsx" , "login" ) excel.read_data() |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!