- 打开一个文件
- 所谓的open 打开一个文件 里面的w 或者 r 或者其他模式 只是给执行者一个权限
- 读文件
- 如果使用r模式打开一个文件
- 如果文件存在直接打开
- 如果文件不存在 将报错
FileNotFoundError: [Errno 2] No such file or directory: 'hm.txt'
open("hm.txt", "r")
- 写文件
- 如果使用w模式打开一个文件
- 如果文件存在 直接打开
- 如果文件不存在 先创建一个文件 然后打开
- 当文件使用完成后 记得关闭文件
f = open("hm.txt", "w")
# 关闭文件
f.close()
<1>写数据(write)
f.write("hello python")
<2>读数据(read)
ret = f.read()
<3>读数据(readlines)
ret = f.readlines()
- 读取文件中的所有行的内容 使用列表进行保存
<4>读数据(readline)
ret = f.readline()
- 写入数据
- 如果使用w模式写入数据
- 打开文件 然后把文件中的内容清空 然后再写入
f = open("hm.txt", "w", encoding="utf-8")
- 在mac下或者linux 不需要考虑编码格式
- 在windows系统下如果写入中文 需要执行编码格式 utf-8
- 默认windows下为gbk编码格式 (中国的电脑)
f.write("你好世界")
f.close()
读取数据
f = open("hm.txt", "r", encoding="utf-8")
print(f.read())
f.close()
备份
# 准备一个源文件
old_f = open("hmhm.txt", "w")
# 写入数据
old_f.write("nihao\nnihao\nhello\n")
# 关闭文件
old_f.close()
# 准备一个名字 新文件
new_file_name = "hmhm[复件].txt"
# 01 打开源文件读取数据
old_f = open("hmhm.txt", "r")
# 去读行数
ret = old_f.readlines()
# 02 创建一个新文件吧数据写入
new_f = open(new_file_name, "w")
# 遍历列表的数据
for value in ret:
new_f.write(value)
# 03 分别关闭两个文件
old_f.close()
new_f.close()