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

作者:py鱼 时间:2021-07-16 06:43:38 

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)

来源:https://www.cnblogs.com/pyyu/p/6813666.html

标签:Python,文件,操作,内置,函数,flush
0
投稿

猜你喜欢

  • 一千行的MySQL学习笔记汇总

    2024-01-27 22:04:42
  • python读取目录下所有的jpg文件,并显示第一张图片的示例

    2023-06-21 16:31:58
  • python re的findall和finditer的区别详解

    2022-05-19 23:04:33
  • 解决python递归函数及递归次数受到限制的问题

    2023-12-01 01:49:35
  • Python的 元组(Tuple)详解

    2021-09-07 13:55:18
  • Python模块的加载讲解

    2023-04-05 08:42:01
  • golang爬虫colly 发送post请求

    2024-02-05 09:35:03
  • python实现电子词典

    2023-05-14 00:29:01
  • Python入门篇之字符串

    2022-01-09 00:31:17
  • 算法系列15天速成 第十一天 树操作(上)

    2022-08-03 13:03:56
  • numpy的Fancy Indexing和array比较详解

    2022-05-12 23:31:46
  • 如何为Access数据库表添加日期或时间戳

    2008-11-21 12:46:00
  • 深入了解Python数据类型之列表

    2022-12-21 23:14:15
  • python实现多进程通信实例分析

    2023-04-08 19:44:05
  • Mootools常用方法扩展(四)

    2009-02-21 11:12:00
  • python 字典(dict)按键和值排序

    2021-11-20 05:44:35
  • python opencv 找出图像中的最大轮廓并填充(生成mask)

    2021-01-14 23:42:10
  • 从开发人员角度看IE8的开发新特性

    2010-02-26 10:48:00
  • Python将xml和xsl转换为html的方法

    2022-04-02 14:24:32
  • Python实现读写INI配置文件的方法示例

    2021-03-16 08:10:08
  • asp之家 网络编程 m.aspxhome.com