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 相关文章推荐
使用python编写脚本获取手机当前应用apk的信息
Jul 21 Python
python变量不能以数字打头详解
Jul 06 Python
回调函数的意义以及python实现实例
Jun 20 Python
Python基于回溯法子集树模板解决找零问题示例
Sep 11 Python
python spyder中读取txt为图片的方法
Apr 27 Python
Python 使用list和tuple+条件判断详解
Jul 30 Python
python监控nginx端口和进程状态
Sep 06 Python
Python 进程操作之进程间通过队列共享数据,队列Queue简单示例
Oct 11 Python
python构建指数平滑预测模型示例
Nov 21 Python
如何使用pycharm连接Databricks的步骤详解
Sep 23 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 Python
Django REST Framework 分页(Pagination)详解
Nov 30 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
PHILIPS L4X25T电路分析和打理
2021/03/02 无线电
新版PHP极大的增强功能和性能
2006/10/09 PHP
php实现有趣的人品测试程序实例
2015/06/08 PHP
php实现生成验证码实例分享
2016/04/10 PHP
JavaScript的parseInt 取整使用
2011/05/09 Javascript
两种方法实现文本框输入内容提示消失
2013/03/17 Javascript
8个实用的jQuery技巧
2014/03/04 Javascript
JavaScript和CSS交互的方法汇总
2014/12/02 Javascript
javascript中Date对象的使用总结
2016/11/21 Javascript
Bootstrap的modal拖动效果
2016/12/25 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
js省市区级联查询(插件版&无插件版)
2017/03/21 Javascript
ES6新数据结构Map功能与用法示例
2017/03/31 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
vue-devtools的安装步骤
2018/04/23 Javascript
JavaScript模拟实现自由落体效果
2018/08/28 Javascript
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
vue里如何主动销毁keep-alive缓存的组件
2019/03/21 Javascript
微信小程序使用车牌号输入法的示例代码
2019/08/20 Javascript
JavaScript如何判断input数据类型
2020/02/06 Javascript
python 爬取微信文章
2016/01/30 Python
python字符串中的单双引
2017/02/16 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
在python中只选取列表中某一纵列的方法
2018/11/28 Python
python实现求特征选择的信息增益
2018/12/18 Python
python属于解释型语言么
2020/06/15 Python
QA工程师岗位职责
2013/11/20 职场文书
护理专业求职信
2014/06/15 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
财务总监岗位职责范本
2015/04/03 职场文书
革命电影观后感
2015/06/18 职场文书
《海上日出》教学反思
2016/02/23 职场文书
浅谈Laravel中使用Slack进行异常通知
2021/05/29 PHP
redis 解决库存并发问题实现数量控制
2022/04/08 Redis