python将字典写入excel_如何将python字典写入excel文件?

Python字典到Excel转换:正确格式化数据
本文档介绍如何将包含年龄和姓名的Python字典数据正确写入Excel文件。通过读取文本文件生成字典,然后使用xlsxwriter库将数据格式化为表格。在遇到问题后,对代码进行了调整,最终实现了预期的Excel输出格式:Age, Name Count, Names。解决方案涉及修改写入Excel文件的for循环,以避免重复写入行并确保数据正确对齐。" 134752938,10282337,华为OD机试C语言解析:大炮攻城策略,"['华为od', 'C语言', '算法', '动态规划']

我正在尝试将随机生成的字符串和数字的字典写入excel文件.我几乎成功但有一个小问题.我字典的结构如下:

Age: 11, Names Count: 3, Names: nizbh,xyovj,clier

该字典是通过文本文件获得的数据生成的.它根据年龄汇总所有内容,如果两个人的年龄相同,则将它们分组到一个列表中.我正在尝试将此数据写入excel文件.到目前为止,我已经编写了这段代码.

import xlsxwriter

lines = []

workbook = xlsxwriter.Workbook('demo.xlsx')

worksheet = workbook.add_worksheet()

with open ("input2.txt") as input_fd:

lines = input_fd.readlines()

age_and_names = {}

for line in lines:

name,age = line.strip().split(",")

if not age in age_and_names:

age_and_names[age]=[]

age_and_names[age].append(name)

print age_and_names

for key in sorted(age_and_names):

print "Age: {}, Names Count: {}, Names: {}".format(key, len(age_and_names[key]), ",".join(age_and_names[key]))

row=0

col=0

for key in sorted(age_and_names):#.keys():

row += 1

worksheet.write(row, col, key)

for item in age_and_names[key]:

worksheet.write(row, col+1, len(age_and_names[key]))

worksheet.write(row, col+1, item)

row+=1

workbook.close()

但实际上这是做什么的(在excel文件中):

11 nizbh

xyovj

clier

我应该怎么做让它看起来像这样?

Age Name Count Names

11 3 nizbh, xyovj, clier

最佳答案 问题确实存在于两个for循环中.我干涉并和他们一起玩,直到我到达答案.他们工作正常.感谢你们!

用这个替换最后的for循环:

for key in sorted(age_and_names):#.keys():

row+=1

worksheet.write(row, col, key)

worksheet.write(row, col+1, len(age_and_names[key]))

worksheet.write(row, col+2, ",".join(age_and_names[key]))

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值