import xlwt """ enumerate的用法 >>>seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>>list(enumerate(seasons)) # 小标从 0 开始 [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] >>>list(enumerate(seasons, start=1)) # 小标从 1 开始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')] """ def CreatExcel(filename): """创建Excel表格""" #创建workbook即新建excel文件/工作博 filebook=xlwt.Workbook(encoding='utf-8') #创建工作工作表,如果想创建多个工作表,直接在后面 worksheet=filebook.add_sheet(filename) #返回创建的表格名和路径 infoDic={'key1':filebook,'key2':worksheet,'key3':filename} #返回工作簿和工作表的字典类型值 return infoDic def addDataExcel(infodic): """在表格中添加数据""" #对传入的字典类型的数据进行解析 filebook=infodic.get('key1')#获得工作簿 worksheet=infodic.get('key2')#获得表 filename=infodic.get('key3')#文件名 # 字典数据 #嵌套:内部嵌套列表型 data = { "1": ["张三", 150, 120, 100], "2": ["wang", 90, 99, 95], "3": ["wu", 60, 66, 68] } ldata = []#列表数据 # for循环指定取出key值存入num中 num = [a for a in data] # 字典数据取出后无序,需要先排序 num.sort() # for循环将data字典中的键和值分批的保存在ldata中 #ldata=[["张三", 150, 120, 100] ["wang", 90, 99, 95] ["wu", 60, 66, 68]] for x in num: t = [int(x)] #x表示键值,根据键值取出字典中相应的值 for a in data[x]: #a中存放的是data数据中x键值对应的数据 t.append(a) ldata.append(t) # 将数据写入文件,i是enumerate()函数返回的序号数,表示行 #第一次循坏:第一个for(1,["张三", 150, 120, 100]) i=1(row),p=["张三", 150, 120, 100] # 第二个for(1,"张三") j=1(col),q="张三" # (2,"150") j=2(col), # (3,"120") j=3(col), # (4,"100") j=4(col), #第二次循坏: #第三次循环: for i, p in enumerate(ldata): #j是enumerate()函数返回的序号数,表示列 for j, q in enumerate(p): worksheet.write(i, j, q)#row行,col列,data数据 filebook.save(filename) return "OK" if __name__=='__main__': #注意,如果后缀类型名为xlsx可能会出现打不开的现象。需要修正为xls #主要是因为xlwt只支持Excel 2003,xlsx excelDic=CreatExcel("myExcel.xls") mark=addDataExcel(excelDic) print(mark)
Python3.x操作Excel(1)
猜你喜欢
转载自blog.csdn.net/bao_120973681/article/details/83715936
今日推荐
周排行