传统的python读写excel模块xlwt只能写入不超过65536条数据,这点数据量是不多的,要想写成xlsx格式必须借助其余模块。html
这里介绍openpyxlpython
安装方式:pip instal或者easy_install方式都可以app
使用:excel
from openpyxl import load_workbook from openpyxl import Workbook from openpyxl.writer.excel import ExcelWriter wb = load_workbook(filename = r'haggle.xlsx')#获取一个已经存在的excel文件wb ws=wb.get_sheet_by_name("Sheet4")#打开该文件wb须要用到的worksheet即ws wb1=Workbook()#新创建一个工做簿wb1 ewb1=ExcelWriter(workbook=wb1)#新建一个ExcelWriter,用来写wb1 dest_filename=r'result.xlsx'#wb1的名字 ws1=wb1.worksheets[0]#取得wb1的第一个工做表ws1 ws1.title="socialrange"#指定ws1名字为socialrange #for i in range(1,36): #ws2=wb.get_sheet_by_name("Sheet5") for i in range(0,36):#此处遍历列1寻找0-35 li=[]#给每一个数创建一个list表 for row_num in xrange(0,213824):#表示遍历的行数 c2=ws.cell(row=row_num,column=2).value#获取列2对应于excel中的C列的数据 c3=ws.cell(row=row_num,column=3).value#获取列3对应于excel中的D列的数据 #对于每一个i遍历列C,找出C列跟i相同的数据,并将对应的D列的不一样数据保存到li中 if c2==i: if c3 in li: continue else: li.append(c3) else: continue #print len(li) ws1.cell(row=i,column=0).value=i ws1.cell(row=i,column=1).value=len(li) ewb1.save(filename=dest_filename)#保存必定要有,不然不会有结果
下载地址:https://pypi.python.org/pypi/openpyxlcode
官方文档: http://openpyxl.readthedocs.org/en/latest/usage.htmlhtm