1.1 打开文件

  • 函数open():将文件名作为唯一必不可少参数,返回一个文件对象。

>>> f = open('somefile.txt')

  • 文件模式
描述
'r' 读取模式
'w' 写入模式
'x' 独占写入模式
'a' 附加模式
'b' 二进制模式(与其他模式结合使用)
't' 文本模式(默认值,与其他模式结合使用)
'+' 读写模式(与其他模式结合使用)
  1. 显示的指定都区模式效果与根本不指定模式相同。
  2. 写入模式('w')能够写入文件,并在文件不存在时创建文件。在该模式下打开文件时,既有内容将被删除(截断),并从文件开头处开始写入;如果要在既有文件末尾继续写入,可使用附加模式('a')。
  3. 独占写入模式(‘x’)会在文件已经存在时,引发(FileExistsError异常)。
  4. 读写模式('+')可与其他模式结合起来使用,表示即可读取也可写入。
  • 管道重定向输出

  1. 在bash等shell中
$ cat somefile.txt | python somescript.py | sort

cat somefile.txt:将文件somefile.txt的内容写入到标准输出(sys.stdout)
python somescript.py: 从其标准输入中读取,并将结果写入到标准输出。
sort: 读取标准输入(sys.stdin)中所有文本,将各行按字母顺序排序,并将结果写入到标准输出。

  1. 随机存取
    seek(offset[, whence]):将当前位置(执行读取或写入的位置)移动到offset和whence指定的地方。参数offset指定字节(字符)数,而参数whence默认为io.SEEK_SET(0),意味着偏移量是相对于文件开头的(偏移量不能为负数)。
    tell():

  2. 读取和写入
    readline():读取一行
    readlines():读取文件中所有行,并以列表形式返回。

  3. 关闭文件
    close():程序退出时将自动关闭文件对象。可避免用完系统可能指定的文件打开配额。
    对于写如果的文件,一定要关闭,因为python可能缓冲你写入的数据(将数据暂时存储在某个地方以提高效率)。因此程序因某种原因奔溃,数据不会写入到文件中。
    要确保文件关闭,可以使用一条try/finally语句。

#在这里打开文件
try:
	#将数据写入到文件中
finally:
	file.close()

with语句效果同上,打开文件并将其赋给一个变量。在语句体中,将数据写入文件。到达语句末尾时,将自动关闭文件,即便异常也如此。

with open('somefile.txt') as somefile:
	do_something(somefile)
posted on 2021-05-18 09:35  paomianzhong  阅读(81)  评论(0)    收藏  举报