python---文件处理
0x01 打开一个文件
python中内置了文件对象,通过open()函数就可以制定模式打开指定文件,并创建文件对象。该函数的格式如下:
open(file[,mode='r'[,buffering=-1]])
- file:指定要打开或创建的文件名称,如果该文件不存在当前目录,则需要指明路径
- mode:指定打开文件后的处理模式
- buffering:指定读写文件的缓冲模式,数值为0表示不缓存,数值为1表示使用行缓存模式,数值大于1表示缓冲区的大小,默认值为-1。二进制文件和非交互文本文件以固定大小的块缓冲单位,等价于IO
0x02 对文件内容进行操作
向文本文件写入内容
如果需要向文本文件中写入内容,在打开文件时就需要指定文件的打开模式为写模式。应根据不同的开发需要选取不同的写入模式
- w:写入模式,文件可以不存在,如果不存在,则创建文件
我们的程序目录内容为:
#! /usr/bin/python
#coding:utf-8
s = 'hello python! \n'
f=open('demo.txt','w')
f.write(s)
f.close()
运行结果,多了一个demo.txt,文件内的内容就是我们写入的
- x:写入模式,文件必须要存在,不存在抛出异常
此是没有demo.txt文件,打开模式为x
#! /usr/bin/python
#coding:utf-8
s = 'hello python! \n'
f=open('demo.txt','x')
f.write(s)
f.close()
运行结果如下图,我们可以看到爆出一个文件不存在的错误
- a:追加模式,不覆盖文件的原始内容
w模式每次写入都会将文件的原始内容删除,然后在写,a模式不会删除
#! /usr/bin/python
#coding:utf-8
s = 'hello python! \n'
f=open('demo.txt','a')
f.write(s)
f.write(s)
f.close()
运行结果,我们可以看到demo.txt的内容,这里demo.txt存不存在无所谓
读取文件中的内容
- r:读模式(默认模式,可以审略),如果文件不存在,则抛出异常
- +:读写模式
读取文件第一行内容:
#! /usr/bin/python
#coding:utf-8f=open('demo.txt','r')
print(f.readline())
f.close()
运行结果
读取文件所有内容:
#! /usr/bin/python
#coding:utf-8f=open('demo.txt','r')
print(f.read())
f.close()
运行结果
0x03 关闭文件对象
当操作完文件内容以后,一定要关闭文件对象,这样才能确保所做的修改都保存到文件中。关闭文件对象的语句是:
f.close()
文件操作一般遵循打开—读写—关闭的基本流程,但是如果文件读写操作代码发生了异常,就很难保证被正常关闭。可以使用上下文管理关键字with来避免产生这个问题。对于with的具体原理,这里参考这边文章:https://www.cnblogs.com/wongbingming/p/13791972.html
关键字with能够管理资源,总能保证文件正确关闭,并且可以在代码执行结束后自动还原开始执行代码块时的现场,
#! /usr/bin/python
#coding:utf-8with open('demo.txt','a') as f:f.write('233333333 \n')
运行结果,关闭文件都不用我们关闭
python---文件处理相关推荐
- 在pycharm中无法引入同一目录下的python文件
问题 同一目录下存在以下两个python文件: 1. app.py 2. forms.py 现在我希望在app.py中引入forms.py的某个函数,但是出现如下情况: 主要表现在: 函数标红 无法自 ...
- 关于python文件读写小结
读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件 ...
- Python Qt GUI设计:将UI文件转换为Python文件的三种妙招(基础篇—2)
目录 1.创建项目 2.将.ui文件生成.py文件 2.1.Eric 6编译 2.2.Python命令行编译 2.3.脚本编译 3.界面.逻辑分离思想 在开始本文之前提醒各位朋友,Python记得安装 ...
- python 文件追加写入_Python写入文件–解释了打开,读取,追加和其他文件处理功能
python 文件追加写入 欢迎 (Welcome) Hi! If you want to learn how to work with files in Python, then this arti ...
- Python 文件 close() 方法
描述 Python 文件 close() 方法用于关闭一个已打开的文件.关闭后的文件不能再进行读写操作, 否则会触发 ValueError 错误. close() 方法允许调用多次. 当 file 对 ...
- python文件和目录
# -*- coding: utf-8 -*-import osdef printFile(rootDir):allFiles = os.listdir(rootDir) #列出文件夹下所有文件和目录 ...
- 深度学习运行python文件,出现跨路径搜索其他module,怎么解决?
在运行的目标python文件顶部,添加需要用的模块的搜索路径: 1)import sys, os sys.path.append(os.pardir) #添加的路径是,待运行目标python文件所在文 ...
- 第九课.Python文件操作
Python文件读写 最基本的,通过open返回文件句柄(文件对象),将文件读入内存: #f是一个文件对象 f=open('./sample.txt') data=f.read()#read读取所有内 ...
- sys.argv[n] (终端运行python文件第n个参数) 在 pycharm 中的应用
sys.argv[n] (终端运行python文件第n个参数) 在 pycharm 中的应用 打开pycharm --> Run --> Edit Configurations --> ...
- python文件信息排序_python文件排序的方法总结
在python环境中提供两种排序方案:用库函数sorted()对字符串排序,它的对象是字符:用函数sort()对数字排序,它的对象是数字,如果读取文件的话,需要进行处理(把文件后缀名'屏蔽'). (1 ...
最新文章
- 智能制造业乘风破浪,工业机器人怎样勇立潮头?
- intellij idea 配置远程访问本地的tomcat项目
- jQuery extend方法介绍
- 推荐系统笔记:基于SVD的协同过滤
- Swagger2介绍
- 2019第一篇万字长文!30+家一线投资机构已出投资新策略...
- java版开源工作流引擎ccflow从表数据数据源导入设置
- linux服务器u盘启动项检测不到,将U盘设置为第一启动项之后却检测不到U盘怎么办?...
- python opencv显示图片动态_opencv-python计算机视觉图像处理学习笔记2——打开图片,保存图片,显示图片...
- python 两点曲线_python机器学习分类模型评估
- gtp怎么安装系统_UEFI+GTP模式下使用GHO文件安装WIN7或WIN8图文教程
- centos 解决“不在 sudoers 文件中。此事将被报告“的问题
- Unity3D基础4:空物体与预制体
- 三班倒有害健康,建议六班倒
- TypeScript keyof 用法
- 树莓派自带wifi工作不正常
- Python练习实例---房贷计算机
- Android自学笔记:Tab控件源码剖析
- 项目 编码规则(编写代码规则)
- S-function的使用
热门文章
- 分享下自己的EmpireofCode进攻策略 https://empireofcode.com/ https://empireofcode.com/game/#
- 一个页面从输入URL到加载显示完成,发生了什么?
- Jquery中如何获取元素的文本,值,属性和内容
- css 浮动和清除浮动
- Oracle连接字符串记录
- 控制HTML Input只能输入数字和小数点
- CF 839 E-最大团
- some fragments
- Android中的Handler机制
- Java里String.split需要注意的用法