文件操作回顾

mac2022-06-30  28

文件操作回顾

文件操作

1.1 open()---打开

1.2 file---文件的位置(路径)

1.3 mode---操作文件的模式

1.4 encoding---文件的编码方式

1.5 f---文件句柄

1.6

f = open("萝莉小姐姐电话号",mode="r",encoding="utf-8") print(f.read()) f.close()

1.7 操作文件

1.71 打开文件

1.72 操作文件

1.73 关闭文件

1.8 文件操作的模式

1.81 r,w,a模式

1.82 rb,wb,ab模式

1.83 r+,w+,a+模式

1.9 基本格式

f = open("文件的路径(文件放的位置)",mode="操作文件的模式",encoding="文件的编码") # 内置函数 f(文件句柄)

r,w,a模式

2.1 r模式

2.1.1 read()全部读取,看文件的操作方式,r/w/a字符

f = open("萝莉小姐姐电话号",mode="r",encoding="utf-8") print(f.read()) #全部读取 print(f.read(5)) #按照字符进行读取 print(f.read())

2.1.2 readline()读取一行内容,自动换行

print(f.readline()) # 读取一行内容,自动换行 print(f.readline()) # "常鑫你就是大帅比\n" print(f.readline().strip()) #去除换行符

2.1.3 readlines()一行一行的读取,存储在列表中

print(f.readlines())

2.1.4 解决大文件问题:使用for循环文件句柄

for i in f: print(i) # 本质就是一行一行进行读取

2.2 w模式

2.2.1 w分为两步:

1.先清空文件(open清空) 2.写入文件(只能写字符串)

2.2.2 加在尾端,要用换行符

f = open("萝莉小姐姐电话号","w",encoding="utf-8") # f.write("123456789\n") # f.write("123456789\n") # f.write("123456789\n") # f.write("123456789\n")

2.2.3路径

2.2.3.1 绝对路径: C:\user\meet\python24\萝莉小姐姐电话号 从磁盘根部去找

绝对路径打开文件 f = open("F:\s24\day08\萝莉小姐姐电话号","r",encoding="utf-8") print(f.read())

​ 2.3.3.2 相对路径:

相对路径打开文件: f = open("../day03/萝莉小姐姐电话号","r",encoding="utf-8") # print(f.read()) # ../ 返回上一层(父级目录)

​ 2.3.3.3 路径转义:

# 1."\\" # 2.r"C:\user\net" # 推荐使用相对路径 (*****)

​ 2.3.3.4 显示数据原生态

s = "[1,'2',3,4]" print(s) print(repr(s)) # repr -- 显示数据原生态

2.3 a模式(追加写)---在原文件的基础上进行添加,文本末尾

f = open("../day03/萝莉小姐姐电话号","a",encoding="utf-8") # f.write("138383848\n") # f.write("138383850\n")

rb,wb,ab模式

3.1 rb模式(读字节)

f1 = open("1.jpg","rb") print(f1.read()) # 全部读取 print(f1.read(3)) # 按照字节读取

3.2 wb模式:只能写字节

f = open("3.jpg","wb") f.write(f1.read())

3.3 ab模式:只能写字节

f = open("2.jpg","ab") f.write("你好啊".encode("utf-8"))

r+,w+,a+模式

4.1 r+模式:读写 - 先读后写

错误的操作 (坑) # f = open("萝莉小姐姐电话号","r+",encoding="utf-8") # f.write("常鑫你太美") # print(f.read())

4.1.1 正确操作:

正确的操作: # f = open("萝莉小姐姐电话号","r+",encoding="utf-8") # print(f.read()) # f.write("常鑫你太美")

4.2 w+模式:清空写,读(通常要移动光标)

f = open("萝莉小姐姐电话号","w+",encoding="utf-8") # f.write("常鑫你太美") # print(f.tell()) # # f.seek(15) # # print(f.tell()) # print(f.read())

4.3 a+模式:追加写,读

#f = open("萝莉小姐姐电话号","a+",encoding="utf-8") # f.write("常鑫你太美") # print(f.tell()) # 字节数 # print(f.seek(0,0)) # 0将光标移动到文件的头部 # print(f.read())

4.4 操作如果将光标移动到某个位置进行,写入的时候还是在文件的末尾

5 其它操作

tell 查看光标 --- 返回的是字节数 # seek 移动光标 # 1.seek(0,0) -- 移动到文件的头部 # 2.seek(0,1) -- 当前位置 # 3.seek(0,2) -- 移动到文件的末尾 # 4.seek(3) -- 按照字节进行移动(按照编码集,自己进行计算)

5.1 with open的好处: 可以同时打开多个文件 能够自动关闭文件 f = open("萝莉小姐姐电话号","r",encoding="gbk")

print(f.read(3)) # 字符

f = open("萝莉小姐姐电话号","rb")

print(f.read(3)) # 字节

f = open("萝莉小姐姐电话号","r",encoding="gbk")

print(f.read(3)) # 字符

错误操作

f = open("萝莉小姐姐电话号","r",encoding="gbk")

f.seek(-1)

print(f.read())

posted on 2019-07-15 20:52  七橼77 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/-777/p/11191430.html

最新回复(0)