首页 > 编程语言 > 详细

python学习之路 四 :文件处理

时间:2018-07-31 12:28:50      阅读:203      评论:0      收藏:0      [点我收藏+]

本节重点

  • 掌握文件的读、写、修改方法

  • 掌握文件的处理模式的区别

 

 一.文件读取

?    ?1.读取全部内容

# 一次性读取文件
f = open("test.txt",‘r‘,encoding=‘gbk‘)
data = f.read()
print(data)
f.close()

    ?2.按行读取

# 按行读取
f = open("test.txt",‘r‘,encoding=‘gbk‘)
data = f.readline()
print(data,end=‘‘)
f.close()

?    ?3.循环读取

# 循环读取
f = open("test.txt",‘r‘,encoding=‘gbk‘)
for line in f:
    print(line,end=‘‘)
f.close()

    ?4.二进制读取

# 二进制读取
f = open("test.txt",‘rb‘)
data = f.read()
print(data.decode(‘gbk‘))
f.close()

    ?5.按字符读取

# 按字节读取
f = open("test.txt",‘r‘,encoding=‘gbk‘)
data = f.read(1)
print(data)
f.close() f
= open("test.txt",‘r‘,encoding=‘gbk‘) data = f.readline(2) print(data)
f.close()

 二.文件写入

    ?1.清空原内容写入

# 清空原内容写入
f = open(‘test.txt‘,‘w‘,encoding=‘gbk‘)
f.wirte(‘新内容,新世界‘)
f.close()   # 关闭并保存

?    ?2.追加内容

# 清空原内容写入
f = open(‘test.txt‘,‘a‘,encoding=‘gbk‘)
f.wirte(‘新内容,新世界‘)
f.close()   # 关闭并保存

    ?3.二进制写入

# 清空原内容写入
f = open(‘test.txt‘,‘wb‘)
f.wirte(‘新内容,新世界‘.encode(‘gbk‘))
f.close()   # 关闭并保存

    ?4.flush保存

# flush强刷保存内容
f = open(‘test2.txt‘,‘w‘,encoding=‘gbk‘)
f.write(‘新内容,新世界3‘)
f.flush()  #保存内容

#f.close()

 

 三.文件修改

?    ?1.一次性修改,占用cpu

# 一次性修改
f = open("test.txt",‘r+‘,encoding=‘gbk‘)
data = f.read()
f.seek(0)
f.truncate()
data = data.replace(‘Zi‘,‘子‘)
f.write(data)
f.close()

    ?2.边读边改,占用硬盘

# 边读边改
import os
f_name = "test.txt"
f_temp_name = "test_temp.txt"
f = open(f_name,‘r‘,encoding=‘gbk‘)
f_temp = open(f_temp_name,‘w‘,encoding=‘gbk‘)
for line in f:
    f_temp.write(line.replace(‘子‘,‘Zi‘))
f.close()
f_temp.close()
os.replace(f_temp_name,f_name)

 

python学习之路 四 :文件处理

原文:https://www.cnblogs.com/LTEF/p/9395106.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!