怎么用python打开文件


本文摘自php中文网,作者藏色散人,侵删。

怎么用python打开文件?

python下打开文件超级简单,不用导入任何包,直接输入

1

f = open('your_file.txt','r')

就可以打开一个文件进行操作。第二个参数为对文件的操作方式,’w’是写文件,已存在的同名文件会被清空,不存在则会创建一个;’r’是读取文件,不存在会报错;’a’是在文件尾部添加内容,不存在会创建文件,存在则直接在尾部进行添加;还有’wb’是写二进制文件;’rb’是读取二进制文件,比如图片之类的。

但是这种方式其实不是最好的打开文件的方式,这种方式可能会有这样几个问题:

1、未指定文件编码格式,如果文件编码格式与当前默认的编码格式不一致,那么文件内容的读写将出现错误。

2、如果读写文件有错误,会导致文件无法正确关闭。因为哪怕在后面有

1

f.close()

语句,但是如果在打开的时候就出现错误,这种打开方式会出现问题。因此,一般来说,不推荐这种打开文件的方式。(我之前其实一直使用这种方法,,虽然也知道其他的方法,但是嫌麻烦一直没怎么用…)

上面的这些问题都是针对python2的,在python3下open函数可以通过encoding参数指定编码方式,而在2中不可以。

在python3下可以直接通过这样来打开一个文件:

1

f = open('your_file.txt', 'r', encoding='utf-8')

下面的两种方式在python2和python3下都可以使用,因此如果想要让你的代码在2和3下都兼容的话可以尝试下面的两种方法:

1

2

3

4

5

6

import codecs

f1 = codecs.open('your_file1.txt', 'r', 'utf-8') #使用codecs包

f1.close()

import io

f2 = io.open('your_file2.txt', 'r', encoding='utf-8') #使用io包

f2.close()

不知道有没有细心的同学发现上面的打开文件的方式都有瑕疵,下面的方法则是用来解决刚才提到的第二个问题的,也是最推荐的一种打开文件的方式。

1

2

3

import codecs #或者io,使用哪种包无所谓

with codecs.open('your_file.txt', 'r', 'utf-8') as f:

    f.write('This method is prior')

使用with这种上下文环境的方式打开文件,在对文件操作完成后无需通过close()关闭文件,文件会自动关闭,而且安全系数更高。

相关推荐:《Python教程》

以上就是怎么用python打开文件的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

初学者编写Python用什么软件

Python能写桌面程序吗

Python面向对象编程中类和实例的简单讲解(附示例)

Python怎么读取excel中的数值

Python抓取网页乱码的原因及解决方法

如何使用Python画曲线图

Python中给list添加元素的4种方法分享_Python

Python中关于list与numpy.ndarry切片两者的对比详解

Python匿名函数定义及实例解析

Python pip是什么原理

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...