Python文件操作及内置函数flush原理解析


Posted in Python onOctober 13, 2020

1、打开文件得到文件句柄并赋值给一个变量

2、通过句柄对文件进行操作

3、关闭文件

示例文件

'你好呀'
我是于超

再见

文件操作基本流程

f=open('chenli',encoding='utf-8')
first_line=f.readline()
print('第一行是:',first_line)

print('我是分割线'.center(9,'-')) #9代表字符串总共9长度
data=f.read() #读取所有内容
print(data)

Python文件操作及内置函数flush原理解析

#不指定打开编码,即python解释器默认编码,python2.*为ascii,python3.*为utf-8
f=open('chenli.txt')
f.read()

f=open('chenli.txt',encoding='utf-8')
f.read()

2.3 文件打开模式

文件句柄 = open ('文件路径','模式')

打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。

打开文件的模式有:

  • r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
  • w,只写模式【不可读;不存在则创建;存在则清空内容】
  • x, 只写模式【不可读;不存在则创建,存在则报错】
  • a, 追加模式【可读; 不存在则创建;存在则只追加内容】

"+" 表示可以同时读写某个文件

  • r+, 读写【可读,可写】
  • w+,写读【可读,可写】
  • x+ ,写读【可读,可写】
  • a+, 写读【可读,可写】

"b"表示以字节的方式操作

  • rb 或 r+b
  • wb 或 w+b
  • xb 或 w+b
  • ab 或 a+b

注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码

2.4 文件内置函数flush

flush原理:

  • 文件操作是通过软件将文件从硬盘读到内存
  • 写入文件的操作也都是存入内存缓冲区buffer(内存速度快于硬盘,如果写入文件的数据都从内存刷到硬盘,内存与硬盘的速度延迟会被无限放大,效率变低,所以要刷到硬盘的数据我们统一往内存的一小块空间即buffer中放,一段时间后操作系统会将buffer中数据一次性刷到硬盘)
  • flush即,强制将写入的数据刷到硬盘

滚动条:

import sys,time
for i in range(10):
  sys.stdout.write('#')
  sys.stdout.flush()
  time.sleep(0.2)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中import导入上一级目录模块及循环import问题的解决
Jun 04 Python
python 字典(dict)按键和值排序
Jun 28 Python
Django rest framework基本介绍与代码示例
Jan 26 Python
Python常见MongoDB数据库操作实例总结
Jul 24 Python
python、Matlab求定积分的实现
Nov 20 Python
Python合并2个字典成1个新字典的方法(9种)
Dec 19 Python
python使用信号量动态更新配置文件的操作
Apr 01 Python
pytorch使用horovod多gpu训练的实现
Sep 09 Python
python 进制转换 int、bin、oct、hex的原理
Jan 13 Python
深入探讨opencv图像矫正算法实战
May 21 Python
浅谈pytorch中的dropout的概率p
May 27 Python
python之基数排序的实现
Jul 26 Python
Django如何实现防止XSS攻击
Oct 13 #Python
5款实用的python 工具推荐
Oct 13 #Python
Python内置函数及功能简介汇总
Oct 13 #Python
Python pymysql模块安装并操作过程解析
Oct 13 #Python
Python安装并操作redis实现流程详解
Oct 13 #Python
python按照list中字典的某key去重的示例代码
Oct 13 #Python
Python importlib模块重载使用方法详解
Oct 13 #Python
You might like
关于拼配咖啡,你要知道
2021/03/03 咖啡文化
PHP 文章中的远程图片采集到本地的代码
2009/07/30 PHP
PHP Pipeline 实现中间件的示例代码
2020/04/26 PHP
用dtree实现树形菜单 dtree使用说明
2011/10/17 Javascript
javascript检测页面是否缩放的小例子
2013/05/16 Javascript
Jquery实现图片放大镜效果的思路及代码(自写)
2013/10/18 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
node.js中的fs.existsSync方法使用说明
2014/12/17 Javascript
基于Javascript实现弹出页面效果
2016/01/01 Javascript
jQuery+CSS3+Html5实现弹出层效果实例代码(附源码下载)
2016/05/16 Javascript
解析预加载显示图片艺术
2016/12/05 Javascript
JS原生带缩略图的图片切换效果
2018/10/10 Javascript
Vue form表单动态添加组件实战案例
2019/09/02 Javascript
Vue+ElementUI table实现表格分页
2019/12/14 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
JavaScript实现简单计算器
2020/03/19 Javascript
vue实现页面切换滑动效果
2020/06/29 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
[42:00]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第一场 12.13
2020/12/17 DOTA
python使用递归解决全排列数字示例
2014/02/11 Python
python dlib人脸识别代码实例
2019/04/04 Python
关于Tensorflow 模型持久化详解
2020/02/12 Python
基于python实现百度语音识别和图灵对话
2020/11/02 Python
python“静态”变量、实例变量与本地变量的声明示例
2020/11/13 Python
css3类选择器之结合元素选择器和多类选择器用法
2017/03/09 HTML / CSS
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
商务英语专业自荐信
2013/10/14 职场文书
2013年高中生自我评价
2013/10/23 职场文书
工会主席岗位责任制
2014/02/11 职场文书
公司总经理工作职责管理办法
2014/02/28 职场文书
2014两会学习心得:时代的发展
2014/03/17 职场文书
公司2015年终工作总结
2015/05/26 职场文书
餐馆开业致辞
2015/08/01 职场文书
个人业务学习心得体会
2016/01/25 职场文书
pytorch通过训练结果的复现设置随机种子
2021/06/01 Python