同步IO:CPU等着,也就是程序暂停执行后续代码,等数据写入磁盘,再接着往下执行,这种模式称为同步IO;
异步IO:CPU不等待,后续代码可以立刻接着执行,这种模式称为异步IO。
另一种方法是CPU不等待,只是告诉磁盘,“您老慢慢写,不着急,我接着干别的事去了”,于是,后续代码可以立刻接着执行,这种模式称为异步IO。
strip()方法语法:
str.strip([chars])
返回移除字符串头尾指定的字符生成的新字符串。with..as 语句来自动帮我们调用close()方法。
像open()函数返回的这种有个read()方法的对象,在Python中统称为file-like Object。file-like Object不要求从特定类继承,只要写个read()方法就行。在python中常用作缓冲。
把变量从内存中变成可存储或传输的过程称之为序列化
把变量内容从序列化的对象重新读到内存里称之为反序列化
Python语言特定的序列化模块是pickle,但如果要把序列化搞得更通用、更符合Web标准,就可以使用json模块。
dumps()方法返回一个str,内容就是标准的JSON。类似的,dump()方法可以直接把JSON写入一个file-like Object。
通常class的实例都有一个_ dict_属性,它就是一个dict,用来存储实例变量。也有少数例外,比如定义了_ slots_的class。
#定义一个类,序列化后输出
import json
class Student(object):
def __init__(self,name,age,score):
self.name = name
self.age = age
self.score =score
s = Student('Bob',18,88)
print(json.dumps(s,default=lambda obj:obj.__dict__))#__dict__用来存储实例变量
#反序列化
def dict2student(d):
return (d['name'],d['age'],d['score'])
json_str = '{"age":18,"name":"Bob","score":88}' #字符串用''包含
print(json.loads(json_str),dict2student)
学习网站:www.liaoxuefeng.com