python常用模块:file

Posted 风流 少年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python常用模块:file相关的知识,希望对你有一定的参考价值。

一:文件读写模式

  • r:以读方式打开文件,文件的指针将会放在文件的开头,默认模式。
  • w:打开一个文件只用于写,如果文件不存在自动创建,从第一行开始写,如果文件存在则先清空再从第一行写。
  • a:打开一个文件用于追加,如果文件已存在则将会在文件的末尾处写入新数据,如果不存在则自动创建,可以使用\\n来标识换行。

二:常用API

# 打开文件, type(f) = <class '_io.TextIOWrapper'>
f = open('文件名', mode='w', encoding='UTF-8')
# 写内容
f.write('Hello22222')
# 一次写多行内容
f.writelines(["第一行内容","第二行内容"])
# 将内存中的数据刷新到磁盘
f.flush()
# 关闭文件占用,会自动调用flush()
f.close()
#读几个字符
f.read(2)
#光标移动到第5个索引后面
f.seek(5)
#读取光标所在的行
f.readline()
#读取剩下的所有行,每一行都作为list的元素,readlines会读取到每行结尾的换行符\\n 
f.readlines()
#一次读取剩下所有内容 
f.read()

三:示例

type(f) = <class '_io.TextIOWrapper'> 该类实现了迭代器,所以可以通过for循环来使用,每次读一行数据。with as 语法相当于自动在finally中执行了f.close(),保证异常情况下也能关闭文件。with as 相当于jdk8中的try () 语法。

# f在try里面算是全局变量,所以在finally中还可以使用,这如果是其它语言还要把f单独作为一行代码写在外边,有点不优雅
try:
	f = open('a.txt', mode='r', encoding='UTF-8')
finally:
	f.close()
with open('a.txt', mode='r', encoding='UTF-8') as f:
	for line in f: 
		print(line)

以上是关于python常用模块:file的主要内容,如果未能解决你的问题,请参考以下文章

python基础模块的常用方法使用__name__ __file__ __doc__

Python模块导入和常用内置方法

python常用小模块使用汇总

python常用模块 | Python

Python shutil模块(目录和文件操作)

python常用模块之subprocess