Python对文件操作知识汇总


Posted in Python onMay 15, 2016

打开文件

操作文件

1打开文件时,需要指定文件路径和打开方式

打开方式:

r:只读
w:只写
a:追加

“+”表示可以同时读写某个文件

r+:读写
w+:写读
a+:同a

U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

rU
r+U

"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

rb
wb
ab

f = open('test.log','r+',encoding='utf-')
f.write('saf中sdhgrbfds')
print(f.tell()) #查看当前指针位置,以字符为单位
f.seek() #指定当前指针位置,以字节为单位
print(f.read())
f.truncate() #读取指针之前的数据
print(f.tell())
f.close()

二:常见的文件运算

f = open('data', 'r') #以只读形式打开(默认就是只读)
f = open('f.txt', encoding='latin-1') #python3.0 Unicode文件
string = f.read() #把文件读入一个字符串中
string = f.read(N) #读取指针后的N个字节
string = f.readline() #读取下一行,包括行末标识符
alist = f.readlines() #读取整个文件到字符串列表
f.write() #将字符串写入文件
f.writelines() #将列表内所有字符串写入文件
f.close() #手动关闭
f.flush() #把输出缓冲区刷到硬盘中
f.seek(N) #将文件指针移到N处,以字节为单位
for line in open('data'):
print(line) #文件迭代器将文件一行行读出
open('f.txt','r').read() #read all at ance into string

三:在文件中存储并解析python对象

x,y,z = 41,42,43
s = 'spam'
D = {'a':1, 'b':2} #字典对象
L = ['a','b','c'] #列表
f = open('f.txt','w')
f.write(s + '\n')
f.write('%s,%s,%s\n'%(x,y,z))
f.write(str(D))
f.write('\n')
f.write(str(L))
f.close()
print(open('f.txt').read()) #将文件内容输出
#从文件中取出数据,并判断其类型
'''
a = fi.readline()
b = fi.readline()
c = fi.readline()
d = fi.readline()

print(a,b,c,d,type(a),type(b),type(c),type(d))
'''
# 从文件中取出数据,并转换为存储前的类型
fi = open('f.txt')
a = fi.readline().rstrip() #rstrip()去掉换行符
print(a,type(a))
b = fi.readline().rstrip().split(',') #字符串的split()方法,在括号中写入分隔符,将字符串分割为列表。
print(b,type(b))
c = fi.readline()
C = eval(c) #调用内置函数eval(),将字符串转化为可执行的python代码。
print(C,type(C),type(c))
d = fi.readline()
D = eval(d)
print(D,type(D),type(d))

以上所述是小编给大家介绍的Python对文件操作知识汇总的相关知识,希望对大家有所帮助!

Python 相关文章推荐
win7安装python生成随机数代码分享
Dec 27 Python
Windows下实现Python2和Python3两个版共存的方法
Jun 12 Python
Python中的列表生成式与生成器学习教程
Mar 13 Python
Python中实现switch功能实例解析
Jan 11 Python
Python logging管理不同级别log打印和存储实例
Jan 19 Python
Python使用Tkinter实现机器人走迷宫
Jan 22 Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
Feb 26 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
Jun 17 Python
PyTorch: 梯度下降及反向传播的实例详解
Aug 20 Python
详解python中index()、find()方法
Aug 29 Python
在tensorflow中实现去除不足一个batch的数据
Jan 20 Python
python 如何快速复制序列
Sep 07 Python
python实现SMTP邮件发送功能
Jun 16 #Python
详解Python函数作用域的LEGB顺序
May 14 #Python
python爬取51job中hr的邮箱
May 14 #Python
Phantomjs抓取渲染JS后的网页(Python代码)
May 13 #Python
python基于phantomjs实现导入图片
May 13 #Python
Python中遍历字典过程中更改元素导致异常的解决方法
May 12 #Python
Python安装使用命令行交互模块pexpect的基础教程
May 12 #Python
You might like
php str_replace的替换漏洞
2008/03/15 PHP
轻松修复Discuz!数据库
2008/05/03 PHP
PHP单例模式详细介绍
2015/07/01 PHP
php日期操作技巧小结
2016/06/25 PHP
php微信公众号开发模式详解
2016/11/28 PHP
Laravel框架实现文件上传的方法分析
2019/09/29 PHP
用Div仿showModalDialog模式菜单的效果的代码
2007/03/05 Javascript
Javascript 检测、添加、移除样式(className)函数代码
2009/09/08 Javascript
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
js innerHTML 改变div内容的方法
2013/08/03 Javascript
在JavaScript应用中实现延迟加载的方法
2015/06/25 Javascript
vue.js表格组件开发的实例详解
2016/10/12 Javascript
jquery获取easyui日期控件的值实现方法
2016/11/09 Javascript
jquery replace方法去空格
2017/05/08 jQuery
laydate 显示结束时间不小于开始时间的实例
2017/08/11 Javascript
vue中component组件的props使用详解
2017/09/04 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
python的pstuil模块使用方法总结
2019/07/26 Python
Pytorch 数据加载与数据预处理方式
2019/12/31 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
python集合能干吗
2020/07/19 Python
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
html5配合css3实现带提示文字的输入框(摆脱js)
2013/03/08 HTML / CSS
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
澳大利亚设计师服装在线:MISHA
2019/10/07 全球购物
常用UNIX 命令(Linux的常用命令)
2013/07/10 面试题
高中生期末评语大全
2014/01/28 职场文书
2014年人事专员工作总结
2014/11/19 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
2015年学校精神文明工作总结
2015/05/27 职场文书
毕业实习单位意见
2015/06/04 职场文书
MySql分区类型及创建分区的方法
2022/04/13 MySQL