Python_文件操作(文件打开形式,与文件常见方法(读取中文文件),拆分文件任务)
2022/2/3 1:12:29
本文主要是介绍Python_文件操作(文件打开形式,与文件常见方法(读取中文文件),拆分文件任务),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 1.文件打开形式
- 2.文件常见操作
- open函数打开文件
- 注意:open函数打开中文文件
- close函数关闭文件
- read函数读取文件内容
- tell函数,返回文件指针当前指向
- seek(offset,from)函数,更改文件指针指向
- writelines/write函数向文件内写入数据
- 3.文件任务(文件拆分)
1.文件打开形式
-
r只读
-
w只写
-
r+,可读可写。当文件存在时会报错
-
w+,可读可写。当文件不存在时会新建
-
a ,追加文件,不可读
-
a+,追加文件,可读可写
-
rb 以二进制读模式打开。只可读
-
rb+ 以二进制写读写模式打开。可读可写,当文件不存在时报错
-
wb 以位进制写模式打开。只可写
-
wb+ 以二进制读写模式打开。可读可写。当文件不存在时新建
-
ab 以二进制追加模式打开。追加文件,不可读
-
ab+ 以二进制读写模式打开。追加文件。可读可写
2.文件常见操作
open函数打开文件
注意,打开文件时要带路径
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径,默认当前路径 f=open("./测试.txt",'w+')#以写的形式创建文件,文件不存在时新建
open函数返回一个文件描述符,默认打开方式是读取。
注意:open函数打开中文文件
注意:如果要读取中文文件,需要在open函数后添加encoding='utf-8'
f=open("./测试.txt",‘r’,encoding=‘utf-8’)
close函数关闭文件
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径 f=open("./测试.txt",'w+') #关闭文件 f.close()
read函数读取文件内容
.read(size=-1),默认size=-1时读取文件的所有内容,并作为字符串返回。
如果size不为-1,则读取size个字符数据
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径 f=open("./测试.txt",'r',encoding='utf-8') str=f.read() print(str) #关闭文件 f.close()
tell函数,返回文件指针当前指向
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径 f=open("./测试.txt",'r',encoding='utf-8') str=f.read(8)#读取8个字 print(str) print(f.tell()) #关闭文件 f.close()
seek(offset,from)函数,更改文件指针指向
from=0代表从起始位置开始计算
from=1代表从当前文件指针位置开始计算。
from=2代表从文件末尾
偏移offset个字节
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径 f=open("./测试.txt",'r',encoding='utf-8') str1=f.read(8) print(str1) print(f.tell()) print(f.seek(5,0)) #关闭文件 f.close()
writelines/write函数向文件内写入数据
writelines(seq)向文件中写入字符串序列
writ(str)向文件中写入字符串str
#-*-coding:GBK -*- # -*- coding: UTF-8 -*- #open函数打开文件带路径 f=open("./测试.txt",'w+',encoding='utf-8') f.write("喜欢你软起来的样子") f.close()#刷新文件 f=open("./测试.txt",'r',encoding='utf-8') str=f.read() print(str) #关闭文件 f.close()
3.文件任务(文件拆分)
eg:
A:这个问题谁来解决? B:我来! =================== A:新年快乐 B:谢谢,同乐 =================== A:C++是世界上最好的语言 B:胡说,明明是PHP
将上述文件拆分为3个文件,A的放到一个3个文件中,B的放到3个文件中
def Save(A,B,cout): #文件保存 Name_A="A"+str(cout)+".txt" Name_B="B"+str(cout)+".txt" Af=open(Name_A,'w') Bf=open(Name_B,'w') Af.writelines(A) Bf.writelines(B) #写入后关闭 Af.close() Bf.close() f=open("./read.txt",'r',encoding='UTF-8') A=[] B=[] cout=1#计数器 for each_line in f: if each_line[:6]!="======":#判断前6个字是不是=== #字符串分割 (role,line_spoken)=each_line.split(":",2)#字符串分割 if role=="A": A.append(line_spoken) elif role=="B": B.append(line_spoken) else: Save(A,B,cout) #清空A B列表 A=[] B=[] cout+=1 #将剩下的内容保存起来 Save(A,B,cout) f.close()
运行结果
这篇关于Python_文件操作(文件打开形式,与文件常见方法(读取中文文件),拆分文件任务)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门