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

 更新时间:2020年10月13日 15:20:45   作者:py鱼  
这篇文章主要介绍了Python文件操作及内置函数flush原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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解释器默认编码,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程序如何进行保存

    在本篇文章里小编给大家整理了关于python程序保存的方法,有需要的朋友们可以学习下。
    2020-07-07
  • 使用Python编写爬虫的基本模块及框架使用指南

    使用Python编写爬虫的基本模块及框架使用指南

    这篇文章主要介绍了使用Python编写爬虫的基本模块及框架使用指南,模块介绍包括了urllib和urllib2以及re的使用例子框架则是Scrapy的简介,需要的朋友可以参考下
    2016-01-01
  • Anaconda环境GDAL库基于whl文件的配置方法

    Anaconda环境GDAL库基于whl文件的配置方法

    这篇文章主要介绍了Anaconda环境GDAL库基于whl文件的配置方法,我们介绍了基于conda install命令直接联网安装GDAL库的方法,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • Python中NumPy的数组重塑

    Python中NumPy的数组重塑

    这篇文章主要介绍了Python中NumPy的数组重塑,Numpy是Python科学计算库,用于快速处理任意维度的数组,NumPy使用c语言写的,底部解除了GIL,其对数组的操作速度不在受python解释器限制<BR>
    2023-07-07
  • 用Python简单实现个贪吃蛇小游戏(保姆级教程)

    用Python简单实现个贪吃蛇小游戏(保姆级教程)

    本文基于Windows环境开发,适合Python新手,文中有非常详细的代码示例,对正在学习python的小伙伴们很有帮助,需要的朋友可以参考下
    2021-06-06
  • python代码实现AVL树和红黑树

    python代码实现AVL树和红黑树

    专注于Python数据结构,想要深入了解AVL树和红黑树的读者们,你们的机会来了!在这篇指南中,我们将带你探索这两种神奇树结构的奥秘,紧张刺激的实战代码演示,让你一窥这两种树的独特魅力,准备好了吗?让我们一起踏上这场Python树结构之旅!
    2023-12-12
  • Django vue前后端分离整合过程解析

    Django vue前后端分离整合过程解析

    这篇文章主要介绍了Django vue前后端分离整合过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • python 匹配url中是否存在IP地址的方法

    python 匹配url中是否存在IP地址的方法

    今天小编就为大家分享一篇python 匹配url中是否存在IP地址的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 一文了解conda虚拟环境的使用及常见问题

    一文了解conda虚拟环境的使用及常见问题

    管理不同项目的依赖关系是一个常见而棘手的问题,本文主要介绍了一文了解conda虚拟环境的使用及常见问题,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Python入门之字符串操作详解

    Python入门之字符串操作详解

    字符串是Pyhon常用的数据类型,这篇文章主要为大家详细介绍一下python字符串的一些常见实用操作,需要的朋友可以参考下
    2022-09-09

最新评论