一、文件操作
语法
f = open('文件路径',mode='模式',encoding='编码')
open() 调用操作系统打开文件
mode 对文件的操作方式
encoding 文件的编码 注:储存编码要统一
Windows ---- 默认gbk
Linux、Mac ---- 默认utf-8
f 文件句柄 -- 操作文件的路径
打开文件
文件打开方式一
注:需手动关闭,否则会一直在内存中打开,占用内存
f = open(r'D:\new.txt',mode='r',encoding='utf-8')
print(f.read())
f.close()
***********************************************
文件打开方式二
注:帮助自动关闭文件,可同时开多个文件,用逗号隔开,也可以同时操作多个文件
with open('a',mode='r',encoding='utf-8') as f,\
open('b',mode='w',encoding='ytf-8') as f1:
import os
print(os.getcwd()) --- 查看当前工作路径
os.remove() --- 删除文件
os.rename() --- 更改文件名(旧名,新名)
模式
读
r
f = open('a',mode='r',encoding='utf-8')
contend = f.read() ---- 全部读取
print(contend)
print(f.read(3)) ---- 字符读取
print(f.readline()) ---- 读取一行,()内可以加入需要读取本行的几个字符
print(f.readlines()) ---- 读取每一行,储存在列表中
for line in f: ---- 一行一行读取,防止内存溢出
print(line)
rb ---- 读非文本文件,不能指定编码
f = open('a',mode='rb')
print(f.read(3)) ---- 读取3个字节
*******************************************
r+ ---- 读写 —— 先读后写
f = open('a',mode='r+',encoding='utf-8')
print(f.read())
f.write('你好啊')
f.flush()
写
w 清空写
注:没有文件就创建,有就打开,先清空,再写入
f = open("a", mode="w", encoding="utf-8")
f.write("乳娃娃") ———— 不能写入int
f.flush()
f.close()
****************************************
wb
w+ ---- 先清空,写入,再读。 用不着
w+b
*******************************************
a 追加写 -- 文件末尾写入
f = open("a", mode="a", encoding="utf-8")
f.write("啊啊啊啊啊啊啊,好烦啊")
f.flush()
f.close()
*******************************************
ab
a+ -- 追加读,光标默认在末尾
f = open("a", mode="a+", encoding="utf-8")
print(f.read())
f.write("真的废物")
a+b
其他操作
- 绝对路径 ---- 从磁盘的根处查找
- 相对路径 ---- 相对于当前文件查找
- tell() ---- 查看光标位置,单位是字节
- seek(偏移量,起始位置) ---- 起始位置默认0 -- 开头,1--当前位置,2-- 末尾
转载于:https://www.cnblogs.com/douzi-m/p/11227225.html