您的位置:首页 > 编程语言 > Python开发

【python练习】 xlwt 操作excel 写入list数据并考虑合并单元格

2017-12-21 17:14 1691 查看
今天练习一个小案例,将列表数据写入excel  要达到的效果,没有考虑到样式数据定义:
表头 ['部门','姓名','联系方式','入职时间','地址']
内容
[          ["测试部",'小王',15933333333,'2016-02-09',"四川,成都"],
["测试部",'小张',15933333334,'2017-02-09','四川,雅安'],
["测试部",'小李',15933333335,'2015-02-09','双流'],
["开发部",'小熊1',15933333336,'2012-02-09','华阳'],
["开发部",'小熊2',15933333337,'2014-12-31','华阳'],
["市场部",'小熊3',15933333338,'2014-02-09','华阳']
]
练习代码:
考虑不知道测试部,开发部或其他部门有多少人,根据先取出值放到列表循环来读取写入
def write_excel():'''第二种方式,自动判断需要合并的单元格范围:return:'''table_head = ['部门','姓名','联系方式','入职时间','地址']content = [["测试部",'小王',15933333333,'2016-02-09',"四川,成都"],["测试部",'小张',15933333334,'2017-02-09','四川,雅安'],["测试部",'小李',15933333335,'2015-02-09','双流'],["开发部",'小熊1',15933333336,'2012-02-09','华阳'],["开发部",'小熊2',15933333337,'2014-12-31','华阳'],["市场部",'小熊3',15933333338,'2014-02-09','华阳']]# 初始化workbook 并且添加excel Sheetworkbook = xlwt.Workbook(encoding = 'utf-8')xlsheet = workbook.add_sheet("excel写入练习",cell_overwrite_ok=True)#写excel表头headlen = len(table_head)for i in range(headlen):xlsheet.write(0,i,table_head[i],set_style('Times New Roman',200))contentRow = len(content) #列表元素个数  = 待写入内容行数#从content获取要写入的第一列的内容,存入列表first_col = []for i in range(contentRow):first_col.append(content[i][0])print("first_col",first_col)#去掉列表中重复元素,并且顺序不变nfirst_col = list(set(first_col))nfirst_col.sort(key=first_col.index) # sort排序与原顺序一致print("nfirst_col",nfirst_col)row = 1for i in nfirst_col:count = first_col.count(i)  # 计算元素的重复个数,比如测试 :3uprange = row+count-1  #合并范围后的上行数xlsheet.write_merge(row,uprange,0,0,i)  #合并单元格写入内容row = uprange+1 #从下一行开始写入#获取content子列表第二个元素,循环写入excel第2列到最后开始的数据for row in range(contentRow):for col in range(1,len(content[row])):xlsheet.write(row+1,col,content[row][col])workbook.save(r'E:\excel合并写入.xls')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐