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实现感知机(PLA)算法
Dec 20 Python
对numpy中的transpose和swapaxes函数详解
Aug 02 Python
使用Python写一个量化股票提醒系统
Aug 22 Python
python 检查是否为中文字符串的方法
Dec 28 Python
浅谈python多进程共享变量Value的使用tips
Jul 16 Python
django中瀑布流写法实例代码
Oct 14 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
Python run()函数和start()函数的比较和差别介绍
May 03 Python
python使用多线程+socket实现端口扫描
May 28 Python
Python实现敏感词过滤的4种方法
Sep 12 Python
Django项目在pycharm新建的步骤方法
Mar 02 Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 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
PHP 编写的 25个游戏脚本
2009/05/11 PHP
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
php集成动态口令认证
2016/07/21 PHP
PHP常用header头定义代码示例汇总
2020/08/29 PHP
javascript下对于事件、事件流、事件触发的顺序随便说说
2010/07/17 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
2011/05/24 Javascript
JavaScript中的闭包(Closure)详细介绍
2014/12/30 Javascript
详解JavaScript基本类型和引用类型
2015/12/09 Javascript
用js实现简单算法的实例代码
2016/09/24 Javascript
js拖拽功能实现代码解析
2016/11/28 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
vue 项目常用加载器及配置详解
2018/01/22 Javascript
解决使用Vue.js显示数据的时,页面闪现原始代码的问题
2018/02/11 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
js实现日历
2020/11/07 Javascript
Element el-button 按钮组件的使用详解
2021/02/01 Javascript
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
python条件和循环的使用方法
2013/11/01 Python
python求素数示例分享
2014/02/16 Python
Python里隐藏的“禅”
2014/06/16 Python
关于Python中空格字符串处理的技巧总结
2017/08/10 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
利用Python将每日一句定时推送至微信的实现方法
2018/08/13 Python
Python实现去除图片中指定颜色的像素功能示例
2019/04/13 Python
3D动画《斗罗大陆》上线当日播放过亿
2021/03/16 国漫
最耐用行李箱,一箱永流传:Briggs & Riley(全球终身保修)
2017/12/07 全球购物
BabyBjörn婴儿背带法国官网:BabyBjorn法国
2018/06/16 全球购物
咖啡书吧创业计划书
2014/01/13 职场文书
大学新生军训感言
2014/02/25 职场文书
购房意向书范本
2014/04/01 职场文书
计算机求职自荐信范文
2014/04/19 职场文书
2014第二批党员干部对照“四风”找差距检查材料思想汇报
2014/09/18 职场文书
2016年“5.12”护士节致辞
2015/07/31 职场文书
祝福语集锦:给百岁老人祝寿贺词
2019/11/19 职场文书
Spring Security动态权限的实现方法详解
2022/06/16 Java/Android