十四 、文件操作
file:文件
目的:利用python代码去操作文件
主要学习:open()
14.1 打开
open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)file : 要打开的文件的名字(路径)# 返回一个文件对象
demo = open('demo.txt')
print(demo.read()) # 将文件中的数据全部以 字符串的形式读取出来
-
路径
-
相对路径:指相对于你运行的py文件为基准的位置
.. 返回一级目录 \ 进入一级目录
-
绝对路径:基于磁盘出发,文件真正的位置
D:\\app\\demo.txt
-
14.2 读取
- read(size) 默认是全部读取
- size: 指定要读取多少字节
f = open('demo.txt')
print(f.read()) # 将文件内的数据 一次性当作字符串全部读取出来f.read(10) # 表示读取10个字节
-
readline() 按行读取 类似于 next()
f = open('demo.txt')print(f.readline(),end='') # 一行一行读 print(f.readline(),end='') # 一行接着一行读 print(f.readline(),end='') # 一行接着一行读 print(f.readline(),end='') # 一行接着一行读 print(f.readline(),end='') # 一行接着一行读
-
readlines() 按行读取,一次性读取所有行,并装到列表中,一行1个元素
f = open('demo.txt')for i in f.readlines():print(i,end='')
open() 打开文件,将文件分为两类打开
1.纯文本文件(ascii码 -》 gbk、utf-8)文本数据-》编码编码又各种各样有没有万能编码,就是啥都能解析utf-8字母,数字,...gbk2.二进制文件(图片、视频、音频)
14.3 关闭
# 手动关闭文件f = open('demo.txt',encoding='utf-8')
xxxxf.close() # 关闭文件对象# 自动关闭文件
# with 上下文管理
with open('demo.txt',encoding='utf-8') as f:print(f.read())
print(f.read()) # 已关闭,当结束缩进以后,自动调用close(),帮助关闭
14.4 写入
-
f.write(内容) # 将 内容字符串,写入到文件中
-
open函数的模式指定
r: 只读 w: 可写(覆盖写入) ,如果文件名不存在,会自动创建 a: 可写(追加写入),如果文件名不存在,会自动创建
# 覆盖写入 # with open('demo.txt',mode='w',encoding='utf-8') as f: # f.write("hello world")# 追加写入 with open('demo.txt',mode='a',encoding='utf-8') as f:f.write("\nhello world")