<p>漂亮的打印表需要大量的代码(<a href="http://code.activestate.com/recipes/267662-table-indentation/" rel="nofollow">table-recipe</a>,<a href="http://code.google.com/p/prettytable/" rel="nofollow">pretty-table</a>)。在即席的基础上编写这种代码并不是一件有趣的事;您不妨使用一个设计良好的模块。在</p>
<p>如果有<a href="http://pandas.pydata.org/" rel="nofollow">pandas</a>,可以将dict直接转储到数据帧中,然后按如下方式打印:</p>
<pre><code>In [4]: import pandas as pd
In [5]: result = {'WeightedLevel': [388.850952, 716.718689, 1312.55957, 2405.087158, 4460.083984, 8543.792969, 18805.201172, 57438.140625, 1792.367554], 'Job': 'Desktop', 'LoadLevel': [0.212399, 0.393191, 0.727874, 1.347436, 2.494368, 4.617561, 8.548006, 15.824027, 1.0], 'Task': 'test', 'Failure': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'Blocks': [7255.151855, 231.589661, 9.365415, 0.55364, 0.0504, 0.006408, 0.001204, 0.000842, 2.060041]}
In [6]: pd.DataFrame(result)
Out[6]:
Blocks Failure Job LoadLevel Task WeightedLevel
0 7255.151855 2 Desktop 0.212399 test 388.850952
1 231.589661 2 Desktop 0.393191 test 716.718689
2 9.365415 2 Desktop 0.727874 test 1312.559570
3 0.553640 2 Desktop 1.347436 test 2405.087158
4 0.050400 2 Desktop 2.494368 test 4460.083984
5 0.006408 2 Desktop 4.617561 test 8543.792969
6 0.001204 2 Desktop 8.548006 test 18805.201172
7 0.000842 2 Desktop 15.824027 test 57438.140625
8 2.060041 2 Desktop 1.000000 test 1792.367554
[9 rows x 6 columns]
</code></pre>
<hr/>
<p>以下是一种不使用第三方模块以表格格式打印dict的方法:</p>
^{pr2}$
<p>收益率</p>
<pre><code>Task Blocks LoadLevel Failure Job WeightedLevel
test 7255.151855 0.212399 2.0 Desktop 388.850952
test 231.589661 0.393191 2.0 Desktop 716.718689
test 9.365415 0.727874 2.0 Desktop 1312.55957
test 0.55364 1.347436 2.0 Desktop 2405.087158
test 0.0504 2.494368 2.0 Desktop 4460.083984
test 0.006408 4.617561 2.0 Desktop 8543.792969
test 0.001204 8.548006 2.0 Desktop 18805.201172
test 0.000842 15.824027 2.0 Desktop 57438.140625
test 2.060041 1.0 2.0 Desktop 1792.367554
</code></pre>