本节重点

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

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

一.文件读取

​    ​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()
# 循环读取二
f = open('test.txt','r',encoding='gbk')
data = f.readlines()
for line in data:
print(line)

​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学习之路 四 :文件处理的更多相关文章

  1. Python学习之路4 - 文件操作&编码转换

    文件操作 文件操作大概分三步: 把文件打开. 操作文件. 把文件关上. 打开文件 打开文件用open()函数,打开成功后返回一个资源,具体语法如下. open(要打开的文件,打开方式,打开文件的格式, ...

  2. Python学习之路5☞文件处理

    一.文件处理流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 正趣果上果 Interesting fruit fruit 词:郭婞 曲:陈粒 编曲/混音/和声:燕池 萧: ...

  3. python学习之路四(类和对象1)

    #encoding:utf-8 ''' Created on 2013-7-29 @author: lixingle ''' #CLass............................... ...

  4. python学习之路网络编程篇(第四篇)

    python学习之路网络编程篇(第四篇) 内容待补充

  5. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  6. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  7. python学习心得第四章

     python 学习心得第四章 1.lambda表达式 1:什么是lambda表达式 为了简化简单函数的代码,选择使用lambda表达式 上面两个函数的表达式虽然不一样,但是本质是一样的,并且lamb ...

  8. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  9. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

随机推荐

  1. XNA数学库

    XNA Math Vectors 在direct3D 9 和10中,包含3D数学库的D3DX库支持向量和其他核心类型的计算.在direct11中,D3DX库不在包含3D数学库,取而代之的是XNA数学库 ...

  2. firebug,chrome调试工具的使用

    ​http://ued.taobao.org/blog/?p=5534 chrome调试 http://www.cnblogs.com/QLeelulu/archive/2011/08/28/2156 ...

  3. k8s podpreset 参数注入

    启动apiserver时,增加 参数 --runtime-config=settings.k8s.io/v1alpha1=true kind: PodPresetapiVersion: setting ...

  4. 这几天用高通VUFORIA的体会

    VUFORIA 主要用来做图像识别,先把图片上至网站,然后网站分析生成数据包 在UNITY中导入VUFORIA SDK和数据包后,就可以正常使用了 对了,数据包需要勾选Load Active那个选项, ...

  5. 接口自动化 Windows + HttpRunner 初探(一)

    运行环境 HttpRunner 是一个基于 Python 开发的测试框架,可以运行在 macOS.Linux.Windows 系统平台上. HttpRunner 的开发环境为 macOS + Pyth ...

  6. 钉钉开发笔记(六)使用Google浏览器做真机页面调试

    注: 参考文献:https://developers.google.com/web/ 部分字段为翻译文献,水平有限,如有错误敬请指正 步骤1: 从Windows,Mac或Linux计算机远程调试And ...

  7. 钉钉开发笔记(5)android系统中html软键盘的适配

    最近项目中发现个别Android手机中存在弹出的软键盘会遮挡输入框的现象,最后自己写了一个方法(如下),问题基本解决. 记录下来,防止忘记.有什么不对的地方欢迎指正.O(∩_∩)O 1 //键盘适配 ...

  8. Linux常见问题及解决方案

    问题一: 删除Linux 的烦恼(没出现系统选择菜单只出现"grub": 问题描述: 安装了Linux.WinXP双系统,采用Grub引导系统.在XP下通过格式化磁盘(非法操作)删 ...

  9. XSS的原理分析与解剖:第三章(技巧篇)【转】

    0×01 前言: 关于前两节url: 第一章:http://www.freebuf.com/articles/web/40520.html 第二章:http://www.freebuf.com/art ...

  10. 908G New Year and Original Order

    传送门 分析 代码 #include<iostream> #include<cstdio> #include<cstring> #include<string ...