Python核心编程笔记(第9章 文件和输入输出)

采用书籍Python核心编程(第二版),人民邮电出版社,2008年7月第1版。本书以Python2.5为主,但笔记主要以Python3.6为主。

第9章 文件和输入输出

9.1 文件对象

  1. 文件对象不仅可以用来访问普通的磁盘文件,也可以访问任何其他类型抽象层面上的“文件”
  2. 内建函数open()返回一个文件对象,对该文件的相关操作都通过该对象进行
  3. 文件知识连续的字节序列。数据的传输经常会用到字节流。

9.2 文件

  1. fr = open(filename, mode=’r’, buffering=-1) :r代表读,w代表写,a代表追加数据,+代表读写,b代表二进制打开;buffering表示缓冲方式
  2. 工厂函数file():open() 来读写文件, 而在处理文件对象时使用 file() , 例如: if instance(f, file)
  3. 读文件:readline() 返回一行 readlines() 返回所有行的一个列表,不会删除行结束符,需自行处理;读文件用 for line in file: … 代替,高效迭代,节省空间
  4. 写文件:write() 写一行 writelines() 写入一个字符串列表;写入的字符串如果需要换行需在字符串中添加换行符
  5. 文件内移动:seek(offset, location),相对location移动offset,文件位置默认为0;offset偏移量,正为增加,负为减少;location 0 1 2分别代表文件开头,当前,末尾
  6. 文件迭代:for line in file: 迭代器迭代,替换原来的readlines(),节省内存且高效
  7. 其他方法:文件关闭close() 把缓冲区数据立刻写入文件flush() 文件截取truncate() 返回当前位置tell()
  8. 文件内建属性:文件打开模式mode 文件是否关闭closed 文件名name
  9. 标准文件:(import sys)sys.stdin/stdout/stderr
  10. 命令行参数:(import sys)sys.argv 是命令行参数的列表,长度代表参数的个数,第一个元素是程序的名称

9.3 文件系统

  1. 访问文件系统需import os,该模块也是访问操作系统的主要接口,该模块包括:read()/write() 读取/写入数据 remove()删除文件 rmdir()/removedirs() 删除目录/删除多层目录 mkdir() chdir() listdir() getcwd()
  2. os.path包括:basename() 去掉目录路径, 返回文件名 dirname() 去掉文件名, 返回目录路径 exists() 指定路径(文件或目录)是否存在 isdir() 指定路径是否存在且为一个目录 isfile() 指定路径是否存在且为一个文件

9.4 永久存储模块

  1. pickle、marshal、shelve
  2. 参考资料:python3_pickle模块详解

参考资料:

  1. 《Python核心编程》第九章:文件和输入输出
  2. python3_pickle模块详解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值