文件读写:python
读:open(文件名,标识符),标识符:' r '(读)、' rb '(读取二进制文件)json
写:open(文件名,标识符),标识符:' w '(写)、' wb '(写二进制文件)缓存
read():能够一次读取文件的所有内容。网络
write():当咱们写文件时,操做系统每每不会马上把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()
方法时,操做系统才保证把没有写入的数据所有写入磁盘。函数
close():关闭文件spa
内存读写:操作系统
StringIO:在内存中读写str。code
BytesIO:在内存中读写bytes。对象
操做文件和目录的函数一部分放在os
模块中,一部分放在os.path
模块中。ip
查看当前目录的绝对路径:
os.path.abspath('.')
在某个目录下建立一个新目录,首先把新目录的完整路径表示出来:
os.path.join('/Users/michael', 'testdir'),
后建立一个目录:
os.mkdir('/Users/michael/testdir')
删掉一个目录:
os.rmdir('/Users/michael/testdir')
合并路径:os.path.join()
拆分路径:os.path.split()
序列化:把变量从内存中变成可存储或传输的过程。
序列化(pickling)以后,就能够把序列化后的内容写入磁盘,或者经过网络传输到别的机器上。
反序列化(unpickling):把变量内容从序列化的对象从新读到内存里。
Python提供了pickle
模块来实现序列化。
pickle.dumps()
方法把任意对象序列化成一个bytes
pickle.dump()
直接把对象序列化后写入一个file-like Object
当咱们要把对象从磁盘读到内存时,能够先把内容读到一个bytes
,而后用pickle.loads()
方法反序列化出对象,也能够直接用pickle.load()
方法从一个file-like Object
中直接反序列化出对象
JSON:一种标准格式,表示出来就是一个字符串,能够被全部语言读取,能够方便地存储到磁盘或者经过网络传输。
JSON表示的对象就是标准的JavaScript语言的对象,JSON和Python内置的数据类型对应以下:
JSON类型 | Python类型 |
---|---|
{} | dict |
[] | list |
"string" | str |
1234.56 | int或float |
true/false | True/False |
null | None |
Python内置的json
模块提供了很是完善的Python对象到JSON格式的转换。
dumps()
方法返回一个str
,内容就是标准的JSON。相似的,dump()
方法能够直接把JSON写入一个file-like Object
。
要把JSON反序列化为Python对象,用loads()
或者对应的load()
方法,前者把JSON的字符串反序列化,后者从file-like Object
中读取字符串并反序列化。