2018-10-10 17:38:08 473浏览
近期有不少小伙伴在观看咱们扣丁学堂的Python视频直播课程,在课程结束后有不少的小伙伴询问老师一些问题,今天小编给大家整理一下学员的问题:Python对excel文档去重及求和的方法。下面就分享给小伙伴们,大家一起来看一下吧。

废话不多说了,直接给大家看一下最笨的解决方法:
#coding:utf-8
import xlrd
import xlwt
import os
from collections import Counter
workbook = 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'小区')
sheet.write(0, 1, u'总端口数')
sheet.write(0, 2, u'已使用端口数')
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在线学习小编给大家分享的Python对excel文档去重及求和的方法,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。
想要学好Python开发小编给大家推荐口碑良好的扣丁学堂,扣丁学堂有专业老师制定的Python学习路线图辅助学员学习,此外还有与时俱进的Python课程体系和Python视频直播课供大家学习,想要学好Python开发技术的小伙伴快快行动吧。扣丁学堂Python技术交流群:279521237。
【关注微信公众号获取更多学习资料】