1 # coding=utf-8 2 3 print "----------------分割线 xlrd--------------------" 4 import xlrd 5 #打开一个wordbook 6 book = xlrd.open_workbook("excel_1.xls") 7 8 worksheets = book.sheet_names() #uoqu所有sheet名称 9 # print ‘workshets:‘,worksheets 10 # sheet = book.sheets() #获得全部sheet 11 # for item in sheet: 12 # print item.name 13 14 sheet = book.sheet_by_index(0) #通过下标切换sheet 15 # sheet = book.sheet_by_name(‘wsf‘) #通过sheet的名称切换 16 17 rows = sheet.nrows #行数 18 cols = sheet.ncols #列数 19 20 r_data = sheet.row(1) #获取指定行数据,返回list 21 # print r_data #[text:u‘LAD‘, text:u‘V100R001C01B001‘, text:u‘SDFA V100R001C01B001‘, empty:u‘‘] 22 c_data = sheet.col(0) #获取指定列数据,返回list 23 # print c_data #[text:u‘product name‘, text:u‘LAD‘, text:u‘DSF‘, text:u‘ASD‘, text:u‘EFSW‘] 24 ce_data = sheet.cell(1,1).value #获取指定单元格的数据 25 # print ce_data 26 27 #获取sheet中的所有行数据 28 for row in xrange(rows): 29 r_data = sheet.row_values(row) 30 print r_data 31 #获取sheet中的所有列数据 32 for col in xrange(cols): 33 c_data = sheet.col_values(col) 34 print c_data 35 #获取sheet中所有单元格的数据 36 for row in xrange(rows): 37 for col in xrange(cols): 38 ce_data = sheet.cell_value(row, col) 39 print "cell:",ce_data 40 41 print "----------------分割线 xlwt--------------------" 42 43 import xlwt 44 ‘‘‘xlwt不能操作已存在的excel,新建excel写入数据‘‘‘ 45 #创建workbook对象 46 workbook = xlwt.Workbook() 47 #创建sheet对象,新建sheet 48 sheet1 = workbook.add_sheet(‘xlwt‘, cell_overwrite_ok=True) 49 sheet2 = workbook.add_sheet(‘xled‘, cell_overwrite_ok=True) 50 51 #---设置excel样式--- 52 #初始化样式 53 style = xlwt.XFStyle() 54 #创建字体样式 55 font = xlwt.Font() 56 font.name = ‘Times New Roman‘ 57 font.bold = True #加粗 58 #设置字体 59 style.font = font 60 #使用样式写入数据 61 # sheet.write(0, 1, "xxxxx", style) 62 63 #向sheet中写入数据 64 sheet1.write(0, 0, ‘nihao xlwt‘, style) 65 sheet1.write(0, 1, ‘nimei‘) 66 sheet2.write(0, 0, ‘nihao xlrd‘, style) 67 sheet2.write(0, 1, ‘nimei‘) 68 #保存excel文件,有同名的直接覆盖 69 workbook.save(‘xlwt.xls‘) 70 print ‘the excel save success‘ 71 72 print "----------------分割线 xlutils--------------------" 73 74 from xlutils import copy 75 ‘‘‘xlutils向excel文件中写入数据,与xlrd结合使用‘‘‘ 76 #打开excel文件 77 rb = xlrd.open_workbook("xlwt.xls") 78 wb = copy.copy(rb) #copy副本进行写数据 79 #获取sheet对象,不能通过rb进行sheet的获取,xlrd没有write()方法 80 ws = wb.get_sheet(0) 81 ws.write(0, 0, ‘666666666‘) 82 print "write success" 83 #必须要保存,保存为同名文件,未修改的部分保留 84 wb.save(‘xlwt.xls‘) 85 86 print "----------------分割线 pyExcelerator read--------------------" 87 88 import pyExcelerator as pyExcel 89 ‘‘‘读excel文件数据,解析excel文件,返回整个excel的数据,返回list‘‘‘ 90 ##parse_xls返回一个列表,每项都是一个sheet页的数据。 91 #每项是一个二元组(表名,单元格数据)。其中单元格数据为一个字典, 92 #键值就是单元格的索引(i,j)。如果某个单元格无数据,那么就不存在这个值 93 sheets = pyExcel.parse_xls(‘xlwt.xls‘) 94 print sheets, type(sheets) 95 96 print "----------------分割线 pyExcelerator write--------------------" 97 98 ‘‘‘pyExcelerator write与xlwt类似,都是新建excel来写入数据‘‘‘ 99 wb = pyExcel.Workbook() 100 ws = wb.add_sheet(u‘第一页‘) 101 #设置样式 102 style = pyExcel.XFStyle() 103 font = pyExcel.Font() 104 font.name = ‘Times New Roamn‘ 105 font.bold = True 106 style.font = font 107 #写入数据,使用样式 108 ws.write(0, 0, u‘你好‘, style) 109 print "write success" 110 wb.save(‘pyExcel.xls‘)
原文:http://www.cnblogs.com/alummox/p/7242389.html