python中也有文件读写,通过调用内置的读写函数。可以完成文件的打开/关闭、读、写入、追加等功能。

open()函数

open()函数为python中的打开文件函数,使用方式为:

f = open("[文件绝对路径]",'[文件使用模式') 以 f = open('/home/user/lina/info_lina.txt','r')为例,我们在linux环境中以r(只读模式)打开/home/user/lina/info_lina.txt的文件,此处路径也可以为相对路径,相对于本程序的路径。

>>> f =  open('/home/user/lina/info_lina.txt','r')
>>> print(f.read())
---- info of lina ----
Name : lina
age : 23
f.close() #在使用open函数打开文件时,使用完后记得关闭

with open() as f :

使用with open() as f : 相对于直接使用open()打开文件,会好用很多,你不用担心忘记调用f.close()关闭文件,会自动给你关闭。使用模式为:

with open('文件路径','使用模式') as f : 以 with open('/home/user/lina/info_lina.txt','w') as f : 为例,在linux环境下以w(读写模式)打开文件,该模式下如果文件存在就直接打开,如果不存在就创建文件。

with还可以同时打开多个文件,with open('file1') as obj1, open('file2') as obj2:

>>> with open('/home/user/lina/info_lina.txt','w') as f:
>>> f.write('\nJob : model')

其他的打开模式

打开方式 描述
r 只读模式,文件的指针将会放在文件的开头,为默认模式。只能用read()函数读
rb 同上,b表示以二进制格式打开
r+ 读写模式,打开一个文件可读可写。可用read()函数读,也可用write()写入
rb+ 二进制模式打开文件,读写模式
w 打开一个文件只用于写入,如果文件存在就覆盖,不存在就创建新文件。同理以上w+ wb+
a 打开一个文件往该文件的最后追加内容,所以指针在文件的末尾,同理当文件不存在时创建一个文件。同理a+ ab+

read()、read(size)、readline()、readlines()的区别和使用

我们都知道read()函数是打开文件后用来读取文件内容的。但是必须要注意的是read()函数会一次将文件内容全部读取到内存如果文件太大,你的内存就爆了!

  • 所以read()函数一般用与读小文件。
  • read(size)可以读取指定size字节的内容,常见在socket网络编程中,一个包大小为8192(即8K)当你读取内容传输时,最好小于这个大小,当然你可以重复调用read(size)读取完文件。
  • readline()每次会读取一行数据,同样可以循环调用该函数,直至读取完文件。
  • readlines()会一次性把文件读完,返回一个列表,每一行为列表中的一个元素,for line in f.readlines()可循环列表。同read()使用时注意文件大小。

强烈建议:读取文件时使用for line in f:这样的循环去读取,内容会一条一条的被读取到内存。

>>> for line in f:
... print(line)

python中的文件读写(open()函数、with open('file_directory','r') as f:、read()函数等)的更多相关文章

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

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

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

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

  3. python中 对文件的读写操作 以及如何边写入 边保存flush()

    转自:https://blog.csdn.net/t8116189520/article/details/78854708 首先 python中打开文件大致常用的几类如下: 1.写入文件write # ...

  4. python基础之文件读写

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

  5. 关于Python中的文件操作(转)

    总是记不住API.昨晚写的时候用到了这些,但是没记住,于是就索性整理一下吧: python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Pyth ...

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

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

  7. python中对文件、文件夹,目录的基本操作

    一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()2.返回指定目录下的所有文件和目 ...

  8. python学习之【第十一篇】:Python中的文件操作

    1.前言 在Python中,对文件的操作主要遵循以下流程: 打开文件,得到文件句柄并赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 2.打开文件 使用open函数,可以打开一个已经存在的文件,或 ...

  9. 【Python】解析Python中的文件操作

    目录结构: contents structure [-] 简介 Python中的文件类型 内置函数的文件操作 open()函数 Mode 创建文本文件 读取文本文件 循环文件对象 关闭文件 With语 ...

随机推荐

  1. 简单使用Vuex步骤及注意事项

    使用Vuex的步骤: (1)安装: 1.使用npm安装: npm install vuex --save 2.使用script标签引入 <script src="/path/to/vu ...

  2. PHP 用 fsockopen()、fputs() 来请求一个 URL,不要求返回

    项目需要,场景如下: 某个条件下需要调用接口发送多个请求执行脚本,但是由于每个请求下的脚本执行时间在半个小时左右,所以 就放弃返回执行结果,只要求能秒发送所以就可以. 代码如下: /** * 发起异步 ...

  3. laravel 使用构造器进行增删改查

    使用原生语句进行增删改查 //$list = DB::select('select * from wt_category where id = :id', ['id' => 34]); //$i ...

  4. 20145236《网络对抗》Exp 6 信息搜集与漏洞扫描

    20145236<网络对抗>Exp 6 信息搜集与漏洞扫描 一.基础问题回答 哪些组织负责DNS,IP的管理? 互联网名称与数字地址分配机构,简称ICANN机构,决定了域名和IP地址的分配 ...

  5. spring-batch批处理框架

    转自 http://www.cnblogs.com/gulvzhe/archive/2011/10/21/2220260.html 这个框架没有实际操作,只是从同事处学习到,先转个好文章,以后有机会再 ...

  6. luogu-1563玩具谜题

    题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天, 这些玩具小人把小南的眼镜藏了起来. 小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外.如下图: 这时singersi ...

  7. linux调度器源码分析 - 初始化(二)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 上期文章linux调度器源码分析 - 概述(一)已经把调度器相关的数据结构介绍了一遍,本篇着重通过代码说明 ...

  8. Python不能用于大型项目?人们对Python的十大误解

    Python 类型系统的特点是拥有强大.灵活的类型操作. 维基百科上对此作出的阐述. 而存在一个不争而有趣的事实是, Python 是比Java更加强类型的. Java 对于原生类型和对象区分了类型系 ...

  9. 5、数组&字符串&结构体&共用体&枚举

    程序中内存从哪里来 三种内存来源:栈(stack).堆(heap).数据区(.date): 栈(stack) 运行自动分配.自动回收,不需要程序员手工干预: 栈内存可以反复使用: 栈反复使用后,程序不 ...

  10. 自行实现高性能MVC

    wcf虽然功能多.扩展性强但是也面临配置忒多,而且restful的功能相当怪异,并且目前没法移植.asp.net core虽然支持webapi,但是功能也相对繁多.配置复杂.就没有一个能让码农们安安心 ...