字典的學習:
#-*-coding:utf-8-*-
#定義一個字典,里面有各種數據
dict1={'name':'zhangsan','age':'20','date':{'id':'5','name':'zhang'}}
#打印出字典中age的value值
print(dict1['age'])
#打印出字典中data對應的id的value值
print(dict1['date']['id'])
#打印出字典里的key值
print(dict1.keys())
#打印出字典里的valuez值
print(dict1.values())
循環取出key對應的value值
dict2={'name':'zhangsan','age':'20'}
for key,value in dict2.items():
print(key+":"+value)
序列化和返序列化
序列化:可以理解為把python的對象編碼轉行成json格式的字符串
------序列化就是把python內置數據類型(列表list,元組tuple,字典dict)轉化成str
返序列化:可以理解為把json格式字符串解碼為python數據對象
-----返序列化就是把str轉化為python內置數據類型(列表list,字典dict)
字符串格式-----json格式 str
json字符串的格式有很多種str只是其中一個,text,html,xml
序列化dump,dumps,返序列化load,loads
dump,load是對文件的序列化和返序列化
dumps,loads是對非文件的序列化和返序列化
字典的序列化和返序列化
import json
字典序列化和返序列化的操作
dict1={'name':'zhangsan','age':'20'}
#字典未序列化之前的內容和數據類型
print('字典未序列化之前的內容{0},數據類型:{1}\n'.format(dict1,type(dict1)))
#字典序列化之后的內容和類型
dict_str=json.dumps(dict1)
print('字典序列化之后的內容{0},類型{1}\n'.format(dict_str,type((dict_str))))
#對字典進行反序列化的后查看內容和數據類型
dict2=json.loads(dict_str)
print('字符串dict_str返序列化后的內容:{0},類型{1}'.format(dict2,type(dict2)))
列表的序列化和反序列化
#列表的序列化和反序列化
list1=[1,2,3,4,5]
print('列表未序列化之前的內容{0},數據類型:{1}\n'.format(list1,type(list1)))
#對列表進行序列化處理后查看內容和數據類型
list_str=json.dumps(list1)
print('列表序列化之后的內容{0},數據類型:{1}\n'.format(list_str,type(list_str)))
#列表反序列化之后的內容和數據類型
list2=json.loads(list_str)
print('列表反序列化之后的內容{0},數據類型:{1}\n'.format(list2,type(list2)))
元組的序列化和反序列化
#元組的序列化和反序列化
tuple1=(1,2,3,4,5)
print('元組未序列化之前的內容{0},數據類型:{1}\n'.format(tuple1,type(tuple1)))
#對元組序列化后,查看內容和數據類型
tuple_str=json.dumps(tuple1)
print('元組序列化之后的內容{0},數據類型:{1}\n'.format(tuple_str,type(tuple_str)))
#元組反序列化后,查看內容和數據類型
tuple2=json.loads(tuple_str)
print('元組反序列化之后的內容{0},數據類型:{1}\n'.format(tuple2,type(tuple2)))
實例

文件的序列化和反序列化
序列化:就是把內容寫到文件中去
反序列化:讀取文件中的數據