本文主要是介绍python 实现系统文件、目录操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
源自廖雪峰网站: 点击打开链接
这节主要讲了通过
import os
模块中提供的功能,实现python对操作系统中文件和目录的操作。习题相关的主要函数有:
os.path.abspath(path)
,显示path
在操作系统中的绝对路径os.path.join(path, x)
,将path
和x
拼接成当前操作系统兼容的路径形式os.listdir(path)
,输出当前目录下的文件及子目录为list
类型 (注意这个是在os下面而不是os.path)os.path.isdir(path) and os.path.isfile(path)
判断路径为目录还是文件,注意参数为path,之前在这里出现了很多错误,直接输文件名的话,没有该文件就直接显示False
练习:
编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径。
因为目录中可能含有子目录,故用递归比较方便
我的实现:
import os
def find_dir(string,path):for filename in os.listdir(path):#显示的是当前路径下的文件或者子目录名cur = os.path.join(path,filename)#把路径合并 得到的可能是文件 或者 一个分支目录if os.path.isfile(cur) and string in cur:#含有指定字符串并且是文件print(os.path.abspath(cur))elif os.path.isdir(cur): #可能有的并非目录也并非要查找的文件类型find_dir(string,cur)
find_dir('txt','G:\python')
参考其他:
这是python带有的walk方法用于目录、文件的操作
import osdef detect_walk(dir_path):for root, dirs, files in os.walk(dir_path):for filename in files: print "file:%s\n" % filenamefor dirname in dirs:print "dir:%s\n" % dirnameif __name__ == "__main__":detect_walk(".")
这篇关于python 实现系统文件、目录操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!