PrettyPrint is great, but I came up to the following problem.
I've a structure that print like that :
{ 'table': { 'tr': [ { 'tr': { 'td': [ {'td': 'Period'},
{'td': 'G-A:B '},
{'td': 'SA -A:B '},
{'td': 'PIM-A:B '},
{'td': 'PP-A:B '},
{'td': 'SH-A:B'}]}},
{ 'tr': { 'td': [ {'td': '1'},
{'td': '2:2'},
{'td': '14:10'},
{'td': '4:8'},
{'td': '1:1'},
{'td': '0:0'}]}},
{ 'tr': { 'td': [ {'td': '2'},
{'td': '2:2'},
{'td': '13:11'},
{'td': '37:27'},
{'td': '0:0'},
{'td': '0:0'}]}},
{ 'tr': { 'td': [ {'td': '3'},
{'td': '0:1'},
{'td': '11:13'},
{'td': '0:8'},
{'td': '0:0'},
{'td': '0:0'}]}},
{ 'tr': { 'td': [ {'td': 'TOTAL'},
{'td': '4:5'},
{'td': '38:34'},
{'td': '41:43'},
{'td': '1:1'},
{'td': '0:0'}]}},
{ 'tr': { 'td': [ {'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'}]}}]}}
I was looking to print each level of depth on a new line (which is obviously not the case here).
Any idea how I could do it ? There does't seem to be an option for that.
PS: Using Python 3.4
You can also use an alternative third-party pprint++
:
A drop-in replacement for pprint that's actually pretty
from pprintpp import pprint
data = ... # your dict here
pprint(data)
Prints:
{
'table': {
'tr': [
{
'tr': {
'td': [
{'td': 'Period'},
{'td': 'G-A:B '},
{'td': 'SA -A:B '},
{'td': 'PIM-A:B '},
{'td': 'PP-A:B '},
{'td': 'SH-A:B'},
],
},
},
{
'tr': {
'td': [
{'td': '1'},
{'td': '2:2'},
{'td': '14:10'},
{'td': '4:8'},
{'td': '1:1'},
{'td': '0:0'},
],
},
},
{
'tr': {
'td': [
{'td': '2'},
{'td': '2:2'},
{'td': '13:11'},
{'td': '37:27'},
{'td': '0:0'},
{'td': '0:0'},
],
},
},
{
'tr': {
'td': [
{'td': '3'},
{'td': '0:1'},
{'td': '11:13'},
{'td': '0:8'},
{'td': '0:0'},
{'td': '0:0'},
],
},
},
{
'tr': {
'td': [
{'td': 'TOTAL'},
{'td': '4:5'},
{'td': '38:34'},
{'td': '41:43'},
{'td': '1:1'},
{'td': '0:0'},
],
},
},
{
'tr': {
'td': [
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
{'td': '\xa0'},
],
},
},
],
},
}