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的主要内容,如果未能解决你的问题,请参考以下文章