【发布时间】:2021-04-09 06:33:33
【问题描述】:
我正在尝试以表格格式打印我的嵌套字典。但是一直没能做到。该表是学生姓名和学生成绩的列表。我希望它采用易于阅读的“报告卡”类型格式。我正在使用的 for 循环打印出结果。但它是一列列表形式。
这是我当前设置的字典。
student = {
"student1": {
"Name": "Eddy",
"Grade": 1,
"Math": 78,
"English": 65,
"Physics": 89,
"Chemistry": 80
},
"student2": {
"Name": "Jim",
"Grade": 2,
"Math": 89,
"English": 65,
"Physics": 87,
"Chemistry": 76
},
"student3": {
"Name": "Jane",
"Grade": 3,
"Math": 87,
"English": 97,
"Physics": 75,
"Chemistry": 64
},
}
这是我当前使用的 for 循环。
for i in student:
for j in student[i]:
print(j + " : " + str(student[i][j]))
print("===========")
我想以表格格式打印出来。
Name Grade Math English Physics Chemistry
Eddy 1 78 65 89 80
Jim 2 89 65 87 76
Jane 3 87 97 75 64
我曾尝试使用format() 函数,但无法使其与嵌套字典一起使用。
我也尝试使用pandas 并转换为pd.DataFrame,但无法正常工作。
【问题讨论】:
-
它看到你应该在 python 中了解
string formatting- 请参阅页面pyFormat.info -
print()自动添加新行 - 所以您可能需要print(..., end="")才能在一行中打印。 -
仅供参考:彻底回答问题非常耗时。如果您的问题已解决,请通过接受最适合您的需求的解决方案表示感谢。 ✔ 位于答案左上角的向上/向下箭头下方。如果出现更好的解决方案,则可以接受新的解决方案。如果您的声誉超过 15,您还可以使用向上或向下箭头对答案的质量/有用性进行投票。 如果解决方案无法回答问题,请发表评论。 What should I do when someone answers my question?。谢谢。
标签: python pandas dictionary nested