廢話不多說(shuō),估計(jì)只有我這個(gè)菜鳥(niǎo)廢了2個(gè)小時(shí)才搞出來(lái),主要是我想了太多方法來(lái)實(shí)現(xiàn),最后都因?yàn)檫@因?yàn)槟堑脑蚴×?/p>
間接說(shuō)明自己對(duì)可變與不可變類型的了解,還是不夠透徹
最后就用了個(gè)笨方法解決了!
#coding:utf-8import xlrdimport xlwtimport osfrom collections import Counterworkbook = xlrd.open_workbook(r'D:/hh/heli/a.xlsx')Sheet1 = workbook.sheet_by_name('Sheet1')clos_a=Sheet1.col_values(1)clos_b=Sheet1.col_values(4)clos_c=Sheet1.col_values(5)wbk = xlwt.Workbook()sheet = wbk.add_sheet(u'初始表')sheet.write(0, 0, u'小區(qū)')sheet.write(0, 1, u'總端口數(shù)')sheet.write(0, 2, u'已使用端口數(shù)')test=('D:/hh/heli//美女你好.xls').decode('utf-8') #表名是不是讓你想入非非了,哈哈result = []list_m=map(lambda x,y:[x,y],clos_a,clos_b)list_n=map(lambda q,w:[q,w],clos_a,clos_c)dic={}dic_a={}def read_excel(): while test is True: os.remove(test) else: for elem in list_m: key=elem[0] if key in dic: dic[key]+=elem[1] else: dic[key]=elem[1] for elem_a in list_n: key_a = elem_a[0] if key_a in dic_a: dic_a[key_a]+=elem_a[1] else: dic_a[key_a] = elem_a[1] item=list(dic) item_a=list(dic_a) for i in range(1,len(item)): sheet.write(i,0,item[i]) sheet.write(i,1,dic[item[i]]) for p in range(1,len(item_a)): sheet.write(p,2,dic_a[item_a[p]]) wbk.save(test)if __name__ == "__main__": read_excel()以上這篇python對(duì)excel文檔去重及求和的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林站長(zhǎng)站。
新聞熱點(diǎn)
疑難解答
圖片精選