pyhton与json,Xml

对简单数据类型的encoding 和 decoding:

使用简单的json.dumps方法对简单数据类型进行编码,例如:

1
2
3
4
5
6
import  json
 
obj =  [[ 1 , 2 , 3 ], 123 , 123.123 , 'abc' ,{ 'key1' :( 1 , 2 , 3 ), 'key2' :( 4 , 5 , 6 )}]
encodedjson =  json.dumps(obj)
print  repr (obj)
print  encodedjson

 

from xml.etree import ElementTree

def print_node(node):
     '''打印结点基本信息'''
     print "=============================================="
     print "node.attrib:%s" % node.attrib
     if node.attrib.has_key( "age" ) >  0 :
         print "node.attrib['age']:%s" % node.attrib[ 'age' ]
     print "node.tag:%s" % node.tag
     print "node.text:%s" % node.text
def read_xml(text):
     '''读xml文件'''
     # 加载XML文件(2种方法,一是加载指定字符串,二是加载指定文件)   
     # root = ElementTree.parse(r"D:/test.xml")
     root  = ElementTree.fromstring(text)
     
     # 获取element的方法
     # 1 通过getiterator
     lst_node  = root.getiterator( "person" )
     for node  in lst_node:
         print_node(node)
         
     # 2通过 getchildren
     lst_node_child  = lst_node[ 0 ].getchildren()[ 0 ]
     print_node(lst_node_child)
         
     # 3 .find方法
     node_find  = root.find( 'person' )
     print_node(node_find)
     
     #4. findall方法
     node_findall  = root.findall( "person/name" )[ 1 ]
     print_node(node_findall)
     
if __name__  = = '__main__' :
      read_xml( open ( "test.xml" ).read())

from xml.etree import ElementTree
def print_node(node):

print "=============================================="
print "node.attrib:%s" % node.attrib
if node.attrib.has_key("age") > 0 :
print "node.attrib['age']:%s" % node.attrib['age']
print "node.tag:%s" % node.tag
print "node.text:%s" % node.text
def read_xml(text):


# root = ElementTree.parse(r"<xml><name>wc</name></xml>")
root = ElementTree.fromstring(text)


lst_node = root.getiterator("person")
for node in lst_node:
print_node(node)

lst_node_child = lst_node[0].getchildren()[0]
print_node(lst_node_child)


node_find = root.find('person')
print_node(node_find)

node_findall = root.findall("person/name")[1]
print_node(node_findall)

if __name__ == '__main__':
#read_xml(open("test.xml").read())
read_xml("<person><name>wc</name></person>")

你可能感兴趣的:(json)