傳統的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