一、文件读写

1、打开文件

函数:open(name[. mode[. buffering]])

参数:

  • name:必须;文件的文件名(全路径或执行文件的相对路径。))
  • mode:可选;对文件的读写模式,默认是读模式。
  • buffering:可选;默认无缓冲区。

返回:一个文件对象

实例:

  • fileObject = open(r'c:\123.txt'),注意小写的字母‘r’,表示字符串是字符本身,没有转义等特殊含义。
  • fileObject = open('c:\\123.txt'),反斜杠两个表示一个‘\’。

2、文件模式

mode参数:

  • ‘r’:读模式
  • ‘w’:写模式
  • ‘a’:追加模式
  • ‘b’:二进制模式(可添加到其他模式中使用)
  • ‘+’:读/写模式(可添加到其他模式中使用)

‘r’,只读。

‘w’,写,原内容被替换。

‘a’,在原内容后追加内容。

‘b’,对文本一般用不上,但处理其他类型的文件(二进制的),例如:MP3,图片;‘rb’:读取二进制。

3、文件缓冲区

buffering参数:

  • 0:无缓冲区
  • 1:有缓冲区,有换行符就把内存的中的数据写到文件
  • 大于1的数字:缓冲区的大小;超过缓冲区了就把内存数据写到文件
  • -1:默认缓冲区大小

无缓冲,直接将数据写到硬盘上。

有缓冲,数据先写到内存里,只有使用flush函数或者close函数才会将数据更新到硬盘。

4、文件读取

文件读取分为按字节读取和按行读取。

常用函数:

  • read():
  • readline()
  • close()

file = open('c:\\123.txt')

#读取文件全部内容到内存

file.read() #返回str类型的对象,可以传参数,一个正整数,代表读取一次最多读取的字节数

#读取文件的一行数据

file.readline()

for line in file.readline():

print(line.strip())

#关闭会文件的引用

file.close()#文件对象会占用操作系统资源,影响系统的IO操作;文件使用完毕后必须关闭。

保证程序的健壮性,使用try...finally实现文件读/写

try:
file = open('c:\\123.txt')
print(file.read())
finally:
if file:
file.close()
#第二种写法
with open('c:\\123.txt') as file:
print(file.read())

5、文件写入

读取文件时需要对mode参数传参,‘w’或‘wb’

使用‘wb’参数值,文本文件按二进制读写,如果有缓存,write函数写到内存,如果没有缓存,写到文件。

flush函数把内存中的数据写到文件。close函数把内存中的所有数据写到文件。

写文件也需要使用try...finally 或者with语句编写代码。

python-IO编程,文件读写的更多相关文章

  1. Python之IO编程——文件读写、StringIO/BytesIO、操作文件和目录、序列化

    IO编程 IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口.从 ...

  2. 【Python】[IO编程]文件读写,StringIO和BytesIO,操作文件和目录,序列化

    IO在计算机中指Input/Output,也就是输入和输出. 1.文件读写,1,读文件[使用Python内置函数,open,传入文件名标示符] >>> f = open('/User ...

  3. Python学习(九)IO 编程 —— 文件读写

    Python 文件读写 Python内置了读写文件的函数,用法和C是兼容的.本节介绍内容大致有:文件的打开/关闭.文件对象.文件的读写等. 本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件 ...

  4. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  5. 第二篇:python基础之文件读写

    python基础之文件读写   python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...

  6. Python 基本语法,文件读写,数据结构和类型

    Python 基本语法,文件读写,数据结构和类型 1.基本语法 解释型(无需编译).交互式.面向对象.跨平台.简单好用 中文编码:http://www.cnblogs.com/huxi/archive ...

  7. Python程序设计7——文件读写

    1 文件读写简介 文件读写是应用程序中的常用操作.下面介绍Python中进行文件读写.Python的文件读写是非常简单的. 1.1 open函数 open函数一般有了两个必须参数,一个是文件名参数,另 ...

  8. 【python系统学习17】python中的文件读写

    python中的文件读写 文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本.音频片段.Excel文档.邮件以及任何保存在电脑上的东西. 可使用python批量的操作本地文件, ...

  9. Python IO编程-读写文件

    1.1给出规格化得地址字符串,这些字符串是经过转义的能直接在代码里使用的字符串 需要导入os模块 import os >>>os.path.join('user','bin','sp ...

  10. 06 . Python3入门之IO编程(文件操作)

    IO编程简介 IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口 ...

随机推荐

  1. spring-cloud-Zuul学习(一)【基础篇】--入门案例【重新定义spring cloud实践】

                                                                                                    -- 2 ...

  2. vue图片上传到七牛云

    代码: <template> <div class="upload-info"> <div> <el-upload class=" ...

  3. Java spring boot 2.0连接mysql异常:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone

    解决办法:application.yml提示信息表明数据库驱动com.mysql.jdbc.Driver'已经被弃用了.应当使用新的驱动com.mysql.cj.jdbc.Driver' com.my ...

  4. ES6 常用语法

    1.let 定义变量 1.与var 类似 用于声明一个变量 let userName='kobe' 2.特点 1.在块作用域内有效 2.不会吃重复定义变量 3.应用 1.循环遍历加监听 2.使用let ...

  5. PTA第二次作业

    pta 6-7题 删除字符串中数字字符 1.设计思路 (1)第一步:观察题意了解各个参数与所需函数在题目中的意义: 第二步:设计算法编写函数,让函数的功能实现题目中所需的功能: 第三步:运行程序检测是 ...

  6. Nginx实现集群服务器的负载均衡

    1.安装nginx和tomcat 我这里是使用docker安装的.安装流程可参照 dockerfile 这里安装了两个tomcat,端口分别是42000和42001.第二个tomcat的首页随便加了些 ...

  7. Python 安装和 Pycharm 环境配置

    一.Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它 ...

  8. Java中,多态的实现有哪些要求?实现多态的关键技术?

     多态指的是允许不同类的对象对同一消息做出响应,即同一消息可以根据发送对象的不同而采用多种不同的行为方式(发送消息就是函数调用).实现多态的方法是动态绑定( Dynamic Binding),动态绑定 ...

  9. 【从零开始搭建自己的.NET Core Api框架】(四)实战!带你半个小时实现接口的JWT授权验证

    系列目录 一.  创建项目并集成swagger 1.1 创建 1.2 完善 二. 搭建项目整体架构 三. 集成轻量级ORM框架——SqlSugar 3.1 搭建环境 3.2 实战篇:利用SqlSuga ...

  10. [Swift]LeetCode741. 摘樱桃 | Cherry Pickup

    In a N x N grid representing a field of cherries, each cell is one of three possible integers. 0 mea ...