PythonIO编程
IO编程有两种模式,一种是同步IO
,一种是异步IO
。使用异步IO编写程序的性能会远远高于同步IO,但异步IO的缺点是编程模型复杂度远远高于同步IO。这里先讨论同步模式,异步IO复杂度太高,后续涉及到服务器端程序开发时再讨论。
文件读写
操作文件的好习惯是使用with
语句
file-like Object
有read()
方法的对象在Python中统称为file-like Object。除了文件外,还可以是内存的字节流、网络流、自定义流等。
字符编码
为了避免手动转码,可以使用codecs
模块。
1 | u'测试' txt = |
操作文件和目录
使用os
,os.path
以及shutil
模块来操作文件和目录。
示例代码
序列化
将变量从内存中变成可存储或传输的过程称之为序列化(picking),序列化之后的内容就可以写入磁盘或者通过网络传输到其它机器上。反之将变量内容从序列化的对象重新读到内存里称之为反序列化(unpicking)。
pickle和Cpickle
只能用于Python,且不同版本彼此不兼容,只能用于保存不重要的数据。
Json
1 | dumps(obj,default) #object->json |
感谢网上恩师廖雪峰老师的Python教程,本文大部分内容都摘自于此。