文件操作
文件只能读取一次
注意光标的位置
open()打开 通过python控制操作系统进行打开文件
f=open(“路径”,mode=“模式”,encoding="编码格式")
mode不写默认是r读
f称为文件句柄
file 文件的位置
encoding 文件的编码
f.read()
read全部读取
read(11)按照字符读
readline() 按行读取默认尾部有一个\n
readline().strip() 去掉\n
readlines() 一行一行读取,全部存储在列表中
路径:
rb 读取字节
在字节操作时不能指定encoding编码
f=open( " ",mode="rb")
f.read() 全部读取
f.read(3) 按照字节读
f.readline()按照行进行行读取
f.readlines()按照行进行行全部读取
r 和rb的区别:
read 和readlines如果文件太大时,会出现内存溢出
解决方案:
w操作:清空写 w写文本
wb操作:清空写 w写字节
a --- 追加写(文本)
先读后写
f=open("密码","r+",encoding="utf-8")
print(f.read())
f.write("今天是周一")
f=open("密码","w+",encoding="utf-8")
f.write("今天是周一")
f.seek(0,0)
print(f.read())
如果光标移动到开头再次添加会覆盖原来的信息
f=open("密码","w+",encoding="utf-8")
f.write("今天是周一")
f.seek(0,0)
f.write("aaaaaa")
print(f.read())
f=open("密码","a+",encoding="utf-8")
f.write("今天是周一")
f.seek(0,0)
f.write("aaaaaa")
f.seek(0,0)
print(f.read())
# seek() 移动光标
# f.seek(0,0) # 移动光标到文件的头部
# f.seek(0,1) # 移动光标到当前位置
# f.seek(0,2) # 移动光标到文件末尾
# f.seek(6) # 光标是按照字节移动
f=open("密码","r",encoding="utf-8")
print(f.read(5))
f.seek(0,0)
f.seek(0,1)
f.seek(0,2)
print(f.read())
f=open("密码","r",encoding="utf-8")
f.seek(6)
print(f.read(3))
f=open("密码","r",encoding="utf-8")
print(f.read(3))
print(f.tell())
f.close()
# 修改文件:
# import os # 操作系统交互的接口
#
# f = open('a2',"r",encoding="utf-8")
# f1 = open("a1","w",encoding="utf-8")
# for i in f:
# i = i.replace("日","天")
# f1.write(i)
#
# f.close()
# f1.close()
# os.remove("a2") # 删除不能找回
# os.rename("a1","a2")
# import os # 操作系统交互的接口
# f = open('a2',"r",encoding="utf-8")
# f1 = open("a1","w",encoding="utf-8")
# for i in f:
# i = i.replace("天","日")
# f1.write(i)
#
# f.close()
# f1.close()
# os.rename("a2","a3")
# os.rename("a1","a2")
# 考点:
# import os # 操作系统交互的接口
# f = open('a2',"r",encoding="utf-8")
# f1 = open("a1","w",encoding="utf-8")
# i = f1.read().replace("天","日") # 将文件中全部内容读取 容易导致内存溢出
# f1.write(i)
#
# f.close()
# f1.close()
# os.rename("a2","a3")
# os.rename("a1","a2")
# with open("a3","r",encoding="utf-8")as f,# open('a2',"r",encoding="utf-8")as f1:
# print(f.read())
# print(f1.read())
# 1.自动关闭文件
# 2.同一时间操作多个文件
# 文件操作的目的:
# 1.持久化: 永久存储
原文:https://www.cnblogs.com/python25/p/11402519.html