有没有一种方法可以打印字典的内容而不必遍历字典?在javascript中,您可以console.log查看对象的内容。 python中有类似的东西吗?
我尝试了print语句以及object.keys()和object.values()。但是,我想通过print语句查看整个字典。
print(dictionary)
我希望使用{a: 1}
而不是object at 0x7efd79610278>
答案 0 :(得分:0)
我不认为变量dictionary
是您认为的那样。
这是Python3 REPL(读取,评估,打印,循环)中的一个小示例,该示例显示了打印具有预期行为的字典。
$ python3
Python 3.7.3 (default, Apr 3 2019, 05:39:12)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> a = {}
>>> a[0] = '0'
>>> a
{0: '0'}
>>> print(a)
{0: '0'}
要回答您的问题,默认的__str__
方法发音为(dunder str)就足够了。但是,如果不是这样,您可以执行以下操作并提供自己的实现。
>>> import json
>>> class MyDict(dict):
... def __str__(self):
... return json.dumps(self)
...
>>> d = MyDict()
>>> d['key'] = 'value'
>>> print(d)
{"key": "value"}