open() #打开
file #文件路径,字符串形式
mode #文件模式
encoding #编码方式
文件操作的步骤:
1.打开文件
2.操作文件
3.关闭文件
mode 文件模式:
r w a (重要)
rb wb ab (字节)
r+ w+ a+
f = open("文件路径",mode = "文件模式",encoding = "编码方式")
# open :内置函数 f :文件字柄
路径:
# 1.绝对路径 -- C:\user\meet\python24\萝莉小姐姐电话号
# 2.相对路径 --同一文件夹
# 绝对路径方式打开文件
# f = open("F:\s24\day08\萝莉小姐姐电话号","r",encoding="utf-8")
# print(f.read())
# 相对路径方式打开文件
# f = open("../day03/萝莉小姐姐电话号","r",encoding="utf-8")
# print(f.read())
../ 返回上一层
f = open(r"C:\user\net\s24\day03\萝莉小姐姐电话号","r",encoding="utf-8")
路径转义:
# 1."\\"
# 2.r"C:\user\net"
# 推荐使用相对路径 (*****)
repr() #可以显示数据原生态,看出数据类型
f = open("电话号码本","r",encoding="utf-8")
print(f.read()) #全部读取
print(f.read(5)) #按照字符进行读取5个
print(f.readline()) #读取第一行内容,自动换行
print(f.readline().strip()) #去除换行符
print(f.readlines()) #一行一行读取,存放在列表里
#处理大文件:
for i in f:
print(i) #本质就是一行一行读取(有换行)
? 先清空文件,再写入文件。
f = open("电话号码本","w",encoding="utf-8") #清空
f.write("") #必须写字符串,最好末尾加"\n"换行
? 追加写,在源文件基础上进行添加。 添加在文本末尾。
f = open("电话号码本","a",encoding="utf-8")
f.write("")
f = open("电话号码本","rb") # 不需编码集
print(f.read()) #读取全部字节
print(f.read(5)) #按字节读取5个字节
f = open("电话号码本","wb")
f.write() #只能写字节
? 在末尾追加。
f = open("电话号码本","ab")
f.write() #只能写字节
"r+": 先读后写
"w+": 清空、写、读
"a+": 追加写、读
"w+":
1.清空文件
2.读取内容(默认读取到的空)
3.移动光标
a,ab,a+ 将光标移动到某位置进行写入时,还是会加在文件末尾
f.tell() # 查看光标字节数--返回的是字节数
f.seek(0) # 0将光标移动到文件的头部
seek():移动光标
1. seek(0,0) --移动到文件头部
2. seek(0,1) --光标当前位置
3. seek(0,2) --移动到文件尾部
4. seek(3) --按照字节进行移动,计算方式按照编码计算
with open("文件路径","r",encoding="utf-8") as f:
操作文件
优点:
1.可以同时打开多个文件
2.能够自动关闭文件
修改文件内容:(例如word的查找替换)
1. 创建一个新的文件
2. 将文件中的内容进行替换
3. 替换后的内容写入新文件中
4. 更改文件名
import os
os.rename("原文件名","新文件名")
原文:https://www.cnblogs.com/yzm1017/p/11192068.html