标签:文件 utf encoding read seek f1 操作 open
文件操作
- 找到文件位置
- 双击打开
- 进行一些操作
- 关闭文件
读操作
文件只能读取一次
注意光标的位置
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的区别:
- r需要指定encoding,rb不需要
- r模式中的read(3)按照字符读取,rb模式的read(3)按照字节读取
read 和readlines如果文件太大时,会出现内存溢出
解决方案:
写操作
w操作:清空写 w写文本
- 先清空文件(打开文件的时候)
- 先清空文件(打开文件的时候清空)
- 写入内容
wb操作:清空写 w写字节
a --- 追加写(文本)
r+ 读写(有点用)
先读后写
f=open("密码","r+",encoding="utf-8")
print(f.read())
f.write("今天是周一")
w+ 写读(有点用)
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())
a+ 追加读(追加的时候,光标移动到开头,添加时依然是加到后面)
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.持久化: 永久存储
标签:文件,utf,encoding,read,seek,f1,操作,open 来源: https://www.cnblogs.com/python25/p/11402519.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。