python 打印字典
python 中,如果字典里面又有字典,则输出不好看。
方法一:使用内置的pprint
方法二:自己写一个函数
method 1:
>>> d = {1:{'who':{'name':'Michael','age':20,'job':{'P':'90-91','G':'91-93'}}},2:{'who':{'name':'Mary','age':18,'job':{'P':'90-93','G':'93-95'}}}}
>>> d
{1: {'who': {'job': {'P': '90-91', 'G': '91-93'}, 'age': 20, 'name': 'Michael'}}, 2: {'who': {'job': {'P': '90-93', 'G': '93-95'}, 'age': 18, 'name': 'Mary'}}}
>>> import pprint
>>> pprint.pprint(d)
{1: {'who': {'age': 20,
'job': {'G': '91-93', 'P': '90-91'},
'name': 'Michael'}},
2: {'who': {'age': 18, 'job': {'G': '93-95', 'P': '90-93'}, 'name': 'Mary'}}}
method 2:
>>> d = {1:{'who':{'name':'Michael','age':20,'job':{'P':'90-91','G':'91-93'}}},2:{'who':{'name':'Mary','age':18,'job':{'P':'90-93','G':'93-95'}}}}
>>> d
{1: {'who': {'job': {'P': '90-91', 'G': '91-93'}, 'age': 20, 'name': 'Michael'}}, 2: {'who': {'job': {'P': '90-93', 'G': '93-95'}, 'age': 18, 'name': 'Mary'}}}
>>> def print_dict (d,n=0):
for k,v in d.items():
print '\t'*n,
if type(v)==type({}):
print "%s : {" % k
print_dict(v,n+1)
else:
print("%s : %s" % (k,v))
if n!=0:
print '\t'*(n-1)+ '}'
>>> print_dict(d)
1 : {
who : {
job : {
P : 90-91
G : 91-93
}
age : 20
name : Michael
}
}
2 : {
who : {
job : {
P : 90-93
G : 93-95
}
age : 18
name : Mary
}
}