Python3从零学习(七)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013255127/article/details/51823895
import json

data = {'no' : 1,
        'name' : 'Runoob',
        'url' : 'https://www.baidu.com'
        }

json_str = json.dumps(data)
print("JSON对象:",json_str)


datas = json.loads(json_str)
print("no:",datas['name'])
print("name",datas['url'])


#写json文件
with open('data.json','w') as f:
    json.dump(data,f)


#读json数据
with open('data.json','r') as f:
    data = json.load(f)

    print(data)
movies.xml
<collection shelf="New Arrivals">
<movie title="Enemy Behind">
   <type>War, Thriller</type>
   <format>DVD</format>
   <year>2003</year>
   <rating>PG</rating>
   <stars>10</stars>
   <description>Talk about a US-Japan war</description>
</movie>
<movie title="Transformers">
   <type>Anime, Science Fiction</type>
   <format>DVD</format>
   <year>1989</year>
   <rating>R</rating>
   <stars>8</stars>
   <description>A schientific fiction</description>
</movie>
   <movie title="Trigun">
   <type>Anime, Action</type>
   <format>DVD</format>
   <episodes>4</episodes>
   <rating>PG</rating>
   <stars>10</stars>
   <description>Vash the Stampede!</description>
</movie>
<movie title="Ishtar">
   <type>Comedy</type>
   <format>VHS</format>
   <rating>PG</rating>
   <stars>2</stars>
   <description>Viewable boredom</description>
</movie>
</collection>


import xml.sax

class MovieHandler(xml.sax.ContentHandler):
    def __init__(self):
        self.CurrentData = ""
        self.type = ""
        self.format = ""
        self.year = ""
        self.rating = ""
        self.stars = ""
        self.description = ""

    def startElement(self, name, attrs):
        self.CurrentData = name
        if name == "movie":
            print("-----------")
            title = attrs["title"]
            print("Tiele:",title)

    def endElement(self, name):
        if self.CurrentData == "type":
            print("Type:",self.type)
        elif self.CurrentData == "format":
            print("Format:",self.format)
        elif self.CurrentData == "year":
            print("Year:",self.year)
        elif self.CurrentData == "rating":
            print("Rating:", self.rating)
        elif self.CurrentData == "stars":
            print("Stars:", self.stars)
        elif self.CurrentData == "description":
            print("Description:", self.description)
        self.CurrentData = ""

    def characters(self, content):
        if self.CurrentData == "type":
            self.type = content
        elif self.CurrentData == "format":
            self.format = content
        elif self.CurrentData == "year":
            self.year = content
        elif self.CurrentData == "rating":
            self.rating = content
        elif self.CurrentData == "stars":
            self.stars = content
        elif self.CurrentData == "description":
            self.description = content


if (__name__ == "__main__"):
    # 创建一个 XMLReader
    parser = xml.sax.make_parser()
    # turn off namepsaces
    parser.setFeature(xml.sax.handler.feature_namespaces,0)
    # 重写 ContextHandler
    Handler = MovieHandler()
    parser.setContentHandler(Handler)
    parser.parse("movies.xml")


猜你喜欢

转载自blog.csdn.net/u013255127/article/details/51823895
今日推荐