文件的rb,wb,ab,r+,w+,a+——操作
rb:
f1 = open("1.jpg", "rb")
print(f1.read()) # 全部读取
print(f1.read(10)) # 按照字节读取
wb:爬虫写入本地文件
f = open("2.jpg","wb")
f.write(f1.read())
ab:
f = open("2.jpg", "ab")
f.write("yulin".encode("utf-8"))
+操作:
r+:读写 -- 先读后写
错误的操作(坑):
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r+", encoding="utf-8")
f.write("宇霖是个靓仔")
print(f.read())
正确的操作:
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r+", encoding="utf-8")
print(f.read())
f.write("宇霖是个靓仔")
w+:清空写读
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "w+", encoding="utf-8")
f.write("宇霖是个靓仔")
print(f.read())
a+:追加写读
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "a+", encoding="utf-8")
f.write("宇霖是个靓仔")
print(f.read())
其他操作:
tell 查看光标 -- 返回的是字节数
seek 移动光标
1、seek(0,0) -- 移动到文件的头部
2、seek(0,1) -- 移动到文件的当前位置
3、seek(0,2) -- 移动到文件的末尾
4、seek(3) -- 按照字节进行移动(按照编码集,自己进行计算)
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "a+", encoding="utf-8")
f.write("宇霖是个靓仔")
print(f.tell()) # 字节数
print(f.seek(0,0)) # 0将光标移动到文件的头部
print(f.read())
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "w+", encoding="utf-8")
f.write("宇霖是个靓仔")
print(f.tell()) # 字节数
f.seek(3) # 3将光标移动到文件的第一个文字
print(f.read())
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r", encoding="gbk")
print(f.read(3)) # 字符
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "rb")
print(f.read(3)) # 字节
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r", encoding="gbk")
f.seek(6)
print(f.read())
文件修改:
f = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r", encoding="gbk")
s = f.read()
s1 = s.replace("宇霖", "50")
f1 = open("/Users/ylinn/python_pycharm/day07/外卖电话号", "w", encoding="gbk")
f1.write(s1)
with open() as f:
文件操作的具体内容
with open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r", encoding="gbk")as f, \
open("/Users/ylinn/python_pycharm/day07/外卖电话号.txt", "w", encoding="gbk")as f1:
s = f.read()
s1 = s.replace("宇霖", "50")
f1.write(s1)
import os
os.rename("/Users/ylinn/python_pycharm/day07/外卖电话号", "/Users/ylinn/python_pycharm/day07/外卖电话号.bak")
os.rename("/Users/ylinn/python_pycharm/day07/外卖电话号.txt", "/Users/ylinn/python_pycharm/day07/外卖电话号")
with open("/Users/ylinn/python_pycharm/day07/外卖电话号", "r", encoding="gbk") as f:
pass # 缩进里面操作文件 with open 自动关闭文件
print(f.read()) # 文件已经关闭了

浙公网安备 33010602011771号