文件与目录操作是编程语言中非常重要的功能,Python也对其提供了相应的API支持,这篇博文就是具体介绍它们的使用方法。
对文件进行操作在Python中分为3个步骤,首先要打开文件,然后是对文件进行读写操作,最后需要关闭文件。
1、打开文件使用的是open()函数,它提供初始化输入、输出(I/O)操作的通用接口,成功打开文件后返回一个文件对象,打开失败则引发一个错误。打开文件的语法如下:
file_object = open(file_name,access_mode [,buffering] )
file_name是要打开的文件名,可以是文件的绝对路径或相对路径。绝对路径是文件在硬盘上真正存在的路径,如:c:\python\src是绝对路径。相对路径是相对于当前运行程序所在路径的目标文件位置,表示相对路径时,“.”表示当前位置;“..”表示当前位置的上一级。如“..\images”或“.\DB”是相对路径,使用相对路径的好处是,当程序迁移时,由于绝对路径与本地计算机关联紧密,程序运行可能会出错,所以通常使用相对路径。
access_mode表示文件打开的模式,常用的模式如下:
r表示的是对文件进行读取操作,w表示写入数据到文件中,a是追加数据到文件的末尾,b是标识文件为二进制文件,与rwa组合使用,如打开音视频等二进制文件需要使用b模式,不指定模式时默认是r模式。
buffering表示访问文件采用的缓冲方式。0表示不缓冲,1表示只缓冲1行,任何大于1的值表示按给定值作为缓冲大小,不提供该参数或给定负值表示使用系统默认缓冲机制。
(2)对文件进行读写等操作后需要关闭文件,目的是释放文件占用的资源,使用的是file.close()方法,file表示的是已打开的文件对象。如果不显式的关闭文件,Python的垃圾收集机制也会在文件对象的引用计数为0时自动关闭文件,但是可能会丢失输出缓冲区的数据。如果不及时关闭已经打开的文件,该文件的资源会被占用,将无法对该文件执行其他操作,如删除文件的操作。所以要养成良好的习惯,在完成文件操作后,要及时关闭文件,释放资源。
(3)打开和关闭文件的示例代码如下:
fp = open('e:/readme.txt','w') #绝对路径写文件
fp.close() #关闭文件
fp = open('./readme.txt','r') #相对路径,读文件
fp.close()
第一个是使用绝对路径,“w”表示对文件进行读写操作,如果文件不存在则会创建一个空文件。第二个是使用相对路径,在当前Python文件的目录下查找,“r”表示读取,如果找不到则会出错,找到则会读取文件。
(4)常用的文件对象内建方法
文件对象的操作方法有很对,常用的方法总结如下:
(5)目录操作
1)可以使用getcwd()函数获取当前路径。
#代码如下:
import os
print os.getcwd()
#执行结果如下:
C:\Users\Administrator\Desktop #因为我Python的程序在桌面,所以显示的是这个路径
2)使用listdir(path)可以获得目录下面的所有文件的目录列表。
#代码如下:
import os
print os.listdir(os.getcwd())
#执行结果如下:
['aa.py', 'APP', 'desktop.ini', 'files']
3)创建新的目录可以使用mkdir(path)函数。
#代码如下:
import os
print os.mkdir('test')
#执行结果就是在当前路径下新建了一个目录,也可以指定全路径进行创建
删除目录时,只要将mkdir换成rmdir即可。
4)判断目录是否存在使用path.isdir(path)。
#代码如下
import os
print os.path.isdir('test')
#执行后,如果目录存在,则返回True,若不存在,则返回False。
判断是否是文件可以使用path.isfile(path)。
#代码如下
import os
print os.path.isfile('test')
———————— 本文至此结束,感谢阅读 ————————
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。