python之文件操作

这篇博客详细介绍了Python中文件操作的各个方面,包括文件读取的三部曲:打开、操作和关闭,文件读取模式的选择(如'r', 'w', 'a'等),非纯文本文件的读取,文件的常用属性和方法,如read(), readline(), readlines(), write()等,还讨论了使用with语句确保文件安全读取,以及通过yield处理大文件的方法,最后对比了不同文件读取速率。" 103525948,8529784,Yii2框架下使用OSS PHP SDK对象存储,"['前端开发', 'PHP', 'Yii框架', '云存储', '阿里云']
摘要由CSDN通过智能技术生成

1.文件读取三部曲

打开—>操作—>关闭

1.打开

open(‘要打开的文件名’)
f=open('/tmp/passwd')
print(f)
![这里写图片描述](https://img-blog.csdn.net/20180823215014489?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 可以看到生成了一个文件对象 注意:若文件不存在会报错,并且给出错误码和详细的信息告诉你文件不存在 ![这里写图片描述](https://img-blog.csdn.net/20180823215254128?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

2.操作

content = f.read()   ####读取文件
print(content)
![这里写图片描述](https://img-blog.csdn.net/20180823215505244?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
content = f.write()   ###写入操作
print(content)
![这里写图片描述](https://img-blog.csdn.net/20180823215642143?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) 我们发现这里无法写入,因为对文件读取模式没有选择,下面会进行详解
f=open('/tmp/passwd')
print(f.readable())   ##判度是否可读,返回bool值
print(f.writable())   ###判度是否可写
###返回True即可进行操作
![这里写图片描述](https://img-blog.csdn.net/20180823215933247?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZvcmV2ZXJfd2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

3..关闭

文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源。
f.close()

2.文件读取模式的选择

文件读取模式也就是再打开文件时,所进行的参数选择,默认 mode=‘r’
下面就各参数分析

1) r:
- 只能读,不能写
- 读取的文件不存在,报错
- 默认情况下,从文件指针所在位置开始写入
2) r+
-可以读,可写
- 文件不存在,报错
- 默认情况下,从文件指针所在位置开始写入

f=open('/tmp/passwd',mode='r+')
# print(f.read())   ##如果先执行读取操作,指针会留在文件的最后,再进行写的话,会在文件最后写入
print(f.write('hello 15'))###直接写入的话会从文件开始写入  
print(f.read())   ###写入时,返回的是写入的字符个数
f.close()

这里写图片描述

3)w
-只能写入,不能读取文件内容
-如果文件存在,先清空文件内容,再操作
-如果文件不存在,先创建,再操作

f=open<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值