当前位置:   article > 正文

python open 模式详解

python open 模式

一、打开文件

open方法
python打开一个文件用open()方法,返回一个文件对象,它是可迭代的:

f=open('file.txt', mode='r')
  • 1

mode参数表示对文件的操作方式,读和写由read、write决定:

只读模式r文件不存在报错
r(rt)只读方式打开文本文件,光标位于文件开头(默认模式)
rb读取二进制格式文件,光标位于文件开头
r+读写文件,光标位于文件开头
rb+读写二进制文件,光标位于文件开头
写入模式 w文件存在则覆盖,否则创建新文件
w(wt)写入文本文件
wb写入二进制文件
w+写入和读取文件
wb+写入和读取二进制文件
追加写入模式 a文件存在则末尾追加,否则创建新文件
a(at)追加写入文本文件
ab追加写入二进制文件
a+追加写入和读取文件
ab+追加写入和读取二进制文件

二、read读取方法

open()创建的python文件对象 f 提供了三个"读"方法:
read()
readline()
readlines()
每种方法可以接受一个变量以限制每次读取的数据量。

  • read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。如果文件大于可用内存,可以反复调用read(size)方法,每次最多读取size个字节的内容。
  • readlines() 也是一次读取整个文件,但它自动将文件内容分析成一个行的列表,以换行符\n为切割点。
  • readline() 每次只读取一行,通常比readlines() 慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用 readline()。
  • 注意:这三种方法是把每行末尾的’\n’也读进来了,它并不会默认的把’\n’去掉,需要我们手动去掉。

三、write写入方法

python文件对象提供了两个"写"方法: write() 和 writelines()。

  • write()方法和read()、readline()方法对应,是将字符串写入到文件中。
  • writelines()方法和readlines()方法对应,是针对列表的操作。它接收一个字符串列表作为参数,将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符\n。
f1 = open('test1.txt', 'w')
f1.writelines(["1", "2", "3"])
  • 1
  • 2

此时test1.txt的内容为: 123

f1 = open('test1.txt', 'w')
f1.writelines(["1\n", "2\n", "3\n"])
  • 1
  • 2

此时test1.txt的内容为:

1
2
3
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/278349
推荐阅读
相关标签
  

闽ICP备14008679号