1、XML元素
在xml的解析中,常常需要打印一個xml元素,但是,如果簡單的print element_name,將會只得到"<Element Element.tag at 0x7fa140e98410>"這樣的輸出。顯然,這不是我們想要的。利用lxml,也可以非常方便地美觀打印xml元素,來顯示xml元素的結構。方法如下:
#!/usr/bin/python
#-*-coding:utf-8-*-
from lxml import etree
print etree.tostring(ELEMENT_NAME,encoding='utf-8',pretty_print=True)
這樣就可以看到ELEMENT_NAME元素的結構了。Human-readable。
2、字典dict
有時候,我們想pretty print一個dict,除了自己寫一個for循環遍歷,python也提供了簡單的pprint方法,如下:
import pprint
a={"1":{"NAME":"Alan","VALUE":12,"COLOR":"blue","DATE":"Sep. 25, 2009"},
"2":{"NAME":"Shan","VALUE":13,"COLOR":"green\tblue","DATE":"Sep. 27, 2009"},
"3":{"NAME":"John","VALUE":45,"COLOR":"orange","DATE":"Sep. 29, 2009"},
"4":{"NAME":"Minna","VALUE":27,"COLOR":"teal","DATE":"Sep. 30, 2009"}}
print a
print ""
pprint.pprint(a)
輸出結果如下:
{'1': {'COLOR': 'blue', 'DATE': 'Sep. 25, 2009', 'NAME': 'Alan', 'VALUE': 12}, '3': {'COLOR': 'orange', 'DATE': 'Sep. 29, 2009', 'NAME': 'John', 'VALUE': 45}, '2': {'COLOR': 'green\tblue', 'DATE': 'Sep. 27, 2009', 'NAME': 'Shan', 'VALUE': 13}, '4': {'COLOR': 'teal', 'DATE': 'Sep. 30, 2009', 'NAME': 'Minna', 'VALUE': 27}}
{'1': {'COLOR': 'blue', 'DATE': 'Sep. 25, 2009', 'NAME': 'Alan', 'VALUE': 12},
'2': {'COLOR': 'green\tblue',
'DATE': 'Sep. 27, 2009',
'NAME': 'Shan',
'VALUE': 13},
'3': {'COLOR': 'orange',
'DATE': 'Sep. 29, 2009',
'NAME': 'John',
'VALUE': 45},
'4': {'COLOR': 'teal', 'DATE': 'Sep. 30, 2009', 'NAME': 'Minna', 'VALUE': 27}}
pprint和print的區別只有在dict結構比較復雜時才會有明顯的區別。