Python IO笔记

来源:互联网 发布:mac系统如何下载软件 编辑:程序博客网 时间:2024/06/07 09:40

同步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 jsonclass Student(object):    def __init__(self,name,age,score):        self.name = name        self.age = age        self.score =scores = 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

原创粉丝点击