使用openpyxl讀寫Excel2007以及更高版本

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

相關文章
相關標籤/搜索