博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
18-python-文件的操作
阅读量:6533 次
发布时间:2019-06-24

本文共 2089 字,大约阅读时间需要 6 分钟。

1、文件的操作

1 # -*- coding:utf-8 -*-2 3 f=open("简历.txt")4 5 date=f.read()6 7 print(date)8 9 f.close()

文件打开模式:读-r   写-w     a--追加内容     

⭐读一行,光标移动一行  readline()  读出来的内容是字符串

⭐write()

1 # -*- coding:utf-8 -*-2 3 f = open("简历.txt", "w")4 5 #f.write()6 7 f.close()

若文件不存在,会创建一个文件,若文件存在,会清空文件内容,写的参数必须是字符串,

⭐追加操作-a

1 # -*- coding:utf-8 -*-2 3 f = open("简历.txt", "a")4 5 f.write("111111111111111\n")6 f.write("2222222222222222\n")7 f.writelines(["1","2","3","\n"])8 f.close()

把需要写的内容追加的文件最后

 

文件r+模式,能读,能写  

1 # -*- coding:utf-8 -*-2 3 f = open("简历.txt", "r+")4 data=f.read()5 print(data)6 f.write("qqqq\n")7 8 f.close()

文件写的位置从文件光标处开始写,读的时候从光标处开始读

 

文件的修改:

1 src_f = open("简历.txt", "r")2 data=src_f.readlines()3 src_f.close()4 des_f=open("简历.txt","w",encoding="utf-8")5 des_f.writelines(data[0:10])6 des_f.close()

 

 

with  open(   “简历”,“r”) as   f

  文件不用手动关闭,系统自动关闭

 

文件操作练习题目:

1. 文件a.txt内容:每一行内容分别为商品名字,价钱,个数,求出本次购物花费的总钱数apple 10 3tesla 100000 1mac 3000 2lenovo 30000 3chicken 10 3
1 f = open("a.txt", "w") 2 f.write("apple 10 3\ntesla 100000 1\nmac 3000 2\nlenovo 30000 3\nchicken 10 3\n") 3 f.close() 4 f=open("a.txt","r") 5 data=f.readlines() 6 f.close() 7 price=0 8 for i in data: 9     i=i.strip("\n")10     i=i.split(" ")11     price+=int(i[1])*int(i[2])12 print(price)

 

文件处理,以rb的模式处理

1 # -*- coding:utf-8 -*- 2  3 f=open("a.txt","rb") 4  5 data=f.read() 6  7 f.close() 8  9 print(data)10 print(data.decode("utf-8"))

 

文件处理,以wb的模式处理

1 f=open("b.txt","wb")2 f.write(bytes("111111111223中国\n".encode("utf-8")))3 f.close()

 

文件打开时不知道编码,可以用“latin-1”编码,不能写中文

用这种编码去打开文件,能尽可能多的保存数据

 

f.flush  文件的刷新,把内存的信息写到文件中去

f.tell  给出光标所在的位置  给出的位置的以字节为单位,一个中文字为3字节

 

f.open("a.txt","r+",encoding="UTF-8",newline=" ")   newline=" "读取文件中真正的换行符。

f.seek(n,0)  从0 开始算,指定光标位置,字节的位置  f.seek(n,1),从光标前一次停留位置开始算 

f.read(4)   read读4个字符

f.truncate()  文件的截取,在输入模式

 

例子:查找日志最后一行

1 # -*- coding:utf-8 -*- 2  3 f = open("运行日志.txt", "rb") 4 offs = -10 5 while True: 6     f.seek(offs, 2) 7     date = f.readlines() 8     if len(date) > 1: 9         print(date[-1].decode("utf-8"))10         break11     offs *= 212 13 f.close()

 

转载于:https://www.cnblogs.com/zhfang/p/8799191.html

你可能感兴趣的文章
信息安全领域内的风险损失价值估算
查看>>
GHOST系统后,蓝屏代码为0x0000007B解决方法
查看>>
基于业务单元的开发与部署模式
查看>>
Mysql 分区技术一理论
查看>>
Spring Boot(1) 使用Maven构建Spring Boot项目
查看>>
Android高手的六大境界
查看>>
Android Activity生命周期详解
查看>>
安全策略的制定企业经营的基础
查看>>
进制准换 base_convert()
查看>>
25个增强iOS应用程序性能的提示和技巧
查看>>
c语言学习三
查看>>
实验:CentOS下构建私有CA
查看>>
Linux下查看Tomcat的控制台输出信息
查看>>
第十一课 xshell实现linux与windows互文件、用户与密码的配置文件、用户和用户组的管理...
查看>>
jQuery EasyUI使用教程之使用虚拟滚动视图显示海量数据
查看>>
jQuery EasyUI使用教程之添加节点到树形菜单
查看>>
BCGControlBar中文教程之Ribbon Backstage视图(三)
查看>>
《Linux学习并不难》文件/目录管理(7):rmdir命令删除空目录
查看>>
8天学通MongoDB——第四天 索引操作
查看>>
简单登录系统
查看>>