编程语言中,我们经常会和文件和文件夹打交道,这篇文章主要讲的是Python中,读写文件的常用操作:

一、打开文件

openFile = open('../Files/exampleFile.txt', 'a')
说明:
1. 第一个参数是文件名称,包括路径,可以是相对路径./,也可以是绝对路径"d:\test.txt";
2. 第二个参数是打开的模式mode,包含r,w,a,r+

'r':只读(缺省。如果文件不存在,则抛出错误)

FileNotFoundError: [Errno 2] No such file or directory: '../Files/exampleFile.txt'
'w':只写(如果文件不存在,则自动创建文件),文件常用w
'a':附加到文件末尾(如果文件不存在,则自动创建文件)
'r+':读写(如果文件不存在,则抛出错误)
FileNotFoundError: [Errno 2] No such file or directory: '../Files/exampleFile.txt'
如果需要以二进制方式打开文件,需要在mode后面加上字符"b",比如"rb""wb"等,图片常用wb

二、读取内容
1. openFile.read(size)  
参数size表示读取的数量,可以省略。如果省略size参数,则表示读取文件所有内容。
2. openFile.readline()
读取文件一行的内容
3. openFile.readlines()
读取所有的行到数组里面[line1,line2,...lineN]。在避免将所有文件内容加载到内存中,这种方法常常使用,便于提高效率。
如果要显示文件内容,需要通过print进行打印:print(openFile.readline())

三、写入文件
1. openFile.write('Sample\n') 
将一个字符串写入文件,如果写入结束,必须在字符串后面加上"\n",然后openFile.close()关闭文件
如果需要追加内容,需要在打开文件时通过参数'a',附加到文件末尾;如果覆盖内容,通过参数'w'覆盖

四、文件中的内容定位
1.openFile.read()
读取内容后文件指针到达文件的末尾,如果再来一次openFile.readline()将会发现读取的是空内容,
如果想再次读取第一行,必须将定位指针移动到文件开始位置:
2.openFile.seek(0) 
这个函数的格式如下(单位是bytes):openFile.seek(offset, from_what) 
from_what表示开始读取的位置,offset表示从from_what再移动一定量的距离,
比如openFile.seek(28,0)表示定位到第0个字符并再后移28个字符。from_what值为0时表示文件的开始,它也可以省略,缺省是0即文件开头。

五、关闭文件释放资源
1.openFile.close()
文件操作完毕,一定要记得关闭文件f.close(),可以释放资源供其他程序使用

六、将读取的内容写入文件
open('../Files/File.txt', 'a').write(openFile.read())
将读取到的内容获取我们需要的存入到另外一个文件
我们一般的文件操作步骤是:

1.打开文件>读取文件>关闭文件

openFile = open('../Files/exampleFile.txt', 'r')
print("读取所有内容:\n"+openFile.read())
openFile.seek(0)
print("读取第一行内容:\n"+openFile.readline())
openFile.seek(28,0)
print("读取开始位置向后移动28个字符后的内容:"+openFile.read())
openFile.close()
2.打开文件>写入文件>关闭文件

openFile = open('../Files/exampleFile.txt', 'a')
openFile.write('Sample\n')
openFile.close()
3.打开文件>读取文件>读取的文件写入到新文件>关闭文件

openFile = open('../Files/exampleFile.txt', 'r')
print("读取所有内容:\n"+openFile.read())
openFile.seek(0)
print("读取第一行内容:\n"+openFile.readline())
openFile.seek(28,0)
print("读取开始位置向后移动28个字符后的内容:"+openFile.read())
openFile.seek(0)
open('../Files/File.txt', 'a').write(openFile.read())
openFile.close()
# 操作完文件后一定要记得关闭,释放内存资源
---------------------
作者:cacho_37967865
来源:CSDN
原文:https://blog.csdn.net/sinat_37967865/article/details/79336884
版权声明:本文为博主原创文章,转载请附上博文链接!

python读写文件的操作的更多相关文章

  1. Python读写文件实际操作的五大步骤

    Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序. 一.打开文件 Pytho ...

  2. Python读写文件

    Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('t ...

  3. Python 读写文件的正确方式

    当你用 Python 写程序时,不论是简单的脚本,还是复杂的大型项目,其中最常见的操作就是读写文件.不管是简单的文本文件.繁杂的日志文件,还是分析图片等媒体文件中的字节数据,都需要用到 Python ...

  4. [Python]读写文件方法

    http://www.cnblogs.com/lovebread/archive/2009/12/24/1631108.html [Python]读写文件方法 http://www.cnblogs.c ...

  5. Qt的Model/View Framework解析(数据是从真正的“肉(raw)”里取得,Model提供肉,所以读写文件、操作数据库、网络通讯等一系列与数据打交道的工作就在model中做了)

    最近在看Qt的Model/View Framework,在网上搜了搜,好像中文的除了几篇翻译没有什么有价值的文章.E文的除了Qt的官方介绍,其它文章也很少.看到一个老外在blog中写道Model/Vi ...

  6. Java-IO读写文件简单操作2

    承接Java-IO读写文件简单操作,这里再次写个小demo巩固一下知识点. 代码文件:demo.java package com.test.demo; import java.io.*; public ...

  7. python的re模块一些方法 && Tkinter图形界面设计 && 终止python运行函数 && python读写文件 && python一旦给字符串赋值就不能单独改变某个字符,除非重新给变量赋值

    Tkinter图形界面设计见:https://www.cnblogs.com/pywjh/p/9527828.html#radiobutton 终止python运行函数: 采用sys.exit(0)正 ...

  8. Python 读写文件操作

    python进行文件读写的函数是open或file file_handler = open(filename,,mode) Table mode 模式 描述 r 以读方式打开文件,可读取文件信息. w ...

  9. python对文件的操作

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

随机推荐

  1. hadoop 2.x HA 出现ssh不能解析问题记录。

    在docker里面安装hadoop HA 在启动或者停止的时候报ssh不能解析问题. 问题现象: 发现图片不清晰:把问题现象粘贴如下: root@master:/usr/local/hadoop-2. ...

  2. C语言的历史

    1.ALGOL语言 ALGOL ,为算法语言(ALGOrithmic Language)的缩写,是计算机发展史上首批产生的高级程式语言家族.当时还是晶体管计算机流行的时代,由于ALGOL语句和普通语言 ...

  3. 怎么样修改小程序分享的title/onShareAppMessage

    onShareAppMessage: function (res) { if (res.from === 'button') { // 来自页面内转发按钮 console.log(res.target ...

  4. lucene正向索引(续)——一个文档的所有filed+value都在fdt文件中!!!

    4.1.3. 域(Field)的数据信息(.fdt,.fdx) 域数据文件(fdt): 真正保存存储域(stored field)信息的是fdt文件 在一个段(segment)中总共有segment ...

  5. 感知机模型到DNN模型

    参考资料 感知机模型:https://www.cnblogs.com/pinard/p/6042320.html DNN:https://www.cnblogs.com/pinard/p/641866 ...

  6. Go 语言入门(一)基础语法

    写在前面 在学习 Go 语言之前,我自己是有一定的 Java 和 C++ 基础的,这篇文章主要是基于A tour of Go编写的,主要是希望记录一下自己的学习历程,加深自己的理解 Go 语言入门(一 ...

  7. usb 设备 复位

    How to Reset USB Device in Linux by ROMAN10 on MAY 4, 2011 · 9 COMMENTS   USB devices are anywhere n ...

  8. OpenJudge计算概论-矩阵交换行

    /*======================================================================== 矩阵交换行 总时间限制: 1000ms 内存限制: ...

  9. java匿名内部类new(){}

    匿名内部类:顾名思义,没有名字的内部类.表面上看起来它们似乎有名字,实际那不是它们的名字.当程序中使用匿名内部类时,在定义匿名内部类的地方往往直接创建该类的一个对象.匿名内部类的声明格式如下:new ...

  10. SQL-W3School-函数:SQL AVG() 函数

    ylbtech-SQL-W3School-函数:SQL AVG() 函数 1.返回顶部 1. 定义和用法 AVG 函数返回数值列的平均值.NULL 值不包括在计算中. SQL AVG() 语法 SEL ...