将字典数据输出为控制台

时间:2017-07-25 14:50:33

标签: python

我想在控制台中以表格的形式输出dict数据:

dtc={ "test_case1_short":{"test_step11":"pass","test_step12":"pass","test_step_13":{"status":"failed","details":"ca marche po"}, "test_case2_longest_name":{"test_step21":"ne","test_step22":"ne"}, "test_case3_medium_name":{"test_step31":"ne","test_step32":"ne"} }

注意:对于讲法语的人来说,' dtc'是dict_test_collection(!)

的快捷方式

要构建此表,我想确定键名的大小,以便标注列标题。 我可以得到我的关键名称最大长度:

max = 0
for i in list(dtc.keys()):
if max < len(i):
    max = len(i)
print(max)

但我发现这不是很直接......有没有办法从dict.keys()或其他字典功能中获取此信息?

此外,我想设置像&#34; + ----------------------------- +这样的分隔符&#34;对于节标题和&#34; | |&#34;对于部分身体,要有一个好看的表。 在剖面体中,是否有一种简单直观的方法来设置表格和列的宽度(即。&#39; |&#39;字符在第50列结束,无论线条上的文字是什么,比如用空格填充该行直到某一列)

谢谢

亚历山大

1 个答案:

答案 0 :(得分:0)

  

有没有办法从dict.keys()或其他字典功能中获取此信息?

这对我来说似乎很简单:

app/datagrid?page=2&pageSize=10

这个似乎不那么简单,但它更短:

max_key_len = max(len(key) for key in dtc)
print(max_key_len)