pickle模块:
import pickle
class Student:
def __init__(self,name,age,gender):
self.name=name
self.age=age
self.gender=gender
student1=Student("小明",15,"男")
print(pickle.dumps(student1))
b'\x80\x04\x95G\x00\x00\x00\x00\x00\x00\x00\x8c\x08__main__\x94\x8c\x07Student\x94\x93\x94)\x81\x94}\x94(\x8c\x04name\x94\x8c\x06\xe5\xb0\x8f\xe6\x98\x8e\x94\x8c\x03age\x94K\x0f\x8c\x06gender\x94\x8c\x03\xe7\x94\xb7\x94ub.'
import pickle
class Student:
def __init__(self,name,age,gender):
self.name=name
self.age=age
self.gender=gender
student1=Student("小红",15,"女")
with open("student1.data","wb") as f:
pickle.dump(student1,f)
生成一个student1.data文件,这个文件包含了代码中student1对象的信息。
import pickle
class Student:
def __init__(self,name,age,gender):
self.name=name
self.age=age
self.gender=gender
f=open("student1.data","rb")
data=f.read()
student1=pickle.loads(data)
f.close()
print("姓名",student1.name)
print("年龄",student1.age)
print("性别",student1.gender)
姓名 小红
年龄 15
性别 女
可直接从文件对象中读取
import pickle
class Student:
def __init__(self,name,age,gender):
self.name=name
self.age=age
self.gender=gender
with open("student1.data","rb") as f:
student1=pickle.loads(f)
print("姓名",student1.name)
print("年龄",student1.age)
print("性别",student1.gender)
姓名 小红
年龄 15
性别 女
JSON序列化与反序列化
import json
student1={
"name":"小明"
"age":15,
"gender":"男"
}
print(json.dumps(student1))