Python中的MATLAB风格的终端输出

时间:2016-06-17 13:10:03

标签: python matlab

我无法在一些搜索中找到这个问题。请考虑以下MATLAB结构:

>> s = struct('field_a', 1:10, 'field_b', 1:1000);
>> disp(s)
s =
    field_a: [1 2 3 4 5 6 7 8 9 10]
    field_b: [1x1000 double]

在python词典中(忽略+1差异),它可能是:

>>> d = {'field_a': np.arange(10), 'field_b': np.arange(1000)}
>>> print(d)
    <<floods terminal with output>>

是否可以让python打印出类似的内容:

>>> print(d)
{'field_b': array([1, 2, ..., 998, 999]), 'field_a': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])}

我不一定希望将此限制为numpy数据类型,而是任何可能变得难以处理的多项元素。显然,我希望能够随时检查所有值。

1 个答案:

答案 0 :(得分:0)

是的,有可能。您需要做的就是继承dict类并提供__str__()方法的自定义实现。