查找指定路径下的文件
Python是一种易学易用的编程语言,可以免费下载和使用,而且功能强大,当然这种强大的功能主要是依托各种第三方函数库来实现的。
对编写网页来说,主要使用HTML+CSS+JavaScript来实现,但为了安全起见,在浏览器上运行的JavaScript代码只允许用户通过手动选择某个文件,而不能自动查找某个文件夹下的所有文件,更不能对文件进行修改。而在网站维护升级时,常常需要搜寻并更改一批网页中的特定代码并进行修改操作,这时使用python就比较方便。
1)查找指定路径下的所有文件:
python语言中,对文件及文件夹的操作基本都在os模块中,因此使用前需要import os,然后才能使用。
查找指定文件夹中的所有文件使用os.listdir(path)方法,这个方法返回的是一个文件及文件夹列表,然后可以使用遍历的方法对每一项进行处理。
对于其中的每一项是文件还是文件夹,可以通过os.path.isdir(list)来进行判断,对其中的文件夹也可以使用递归的方法继续列出包含的每一项。示例
当然,上述代码运行时需要预先设置一个变量path,也就是指定一个搜索的路径。
2)指定搜索文件的扩展名:
一个文件夹中的文件类型可能有多种,有时需要寻找特定类型的文件,就需要截取扩展名并据此来判断。
截取文件扩展名使用方法os.path.splitext(path)[1],这里得到的是一个数组,扩展名的索引是1。
下列代码就是只查找具有html及htm扩展名的文件:
这样就获取到了具有特定扩展名的文件,可以根据需要进行下一步的处理。
对编写网页来说,主要使用HTML+CSS+JavaScript来实现,但为了安全起见,在浏览器上运行的JavaScript代码只允许用户通过手动选择某个文件,而不能自动查找某个文件夹下的所有文件,更不能对文件进行修改。而在网站维护升级时,常常需要搜寻并更改一批网页中的特定代码并进行修改操作,这时使用python就比较方便。
1)查找指定路径下的所有文件:
python语言中,对文件及文件夹的操作基本都在os模块中,因此使用前需要import os,然后才能使用。
查找指定文件夹中的所有文件使用os.listdir(path)方法,这个方法返回的是一个文件及文件夹列表,然后可以使用遍历的方法对每一项进行处理。
对于其中的每一项是文件还是文件夹,可以通过os.path.isdir(list)来进行判断,对其中的文件夹也可以使用递归的方法继续列出包含的每一项。示例
def getalldir(path):
"""get all dir in path"""
parents = os.listdir(path)
for parent in parents:
child = os.path.join(path,parent)
if os.path.isdir(child):
getalldir(child)
else:
print(child)
getalldir(path)
当然,上述代码运行时需要预先设置一个变量path,也就是指定一个搜索的路径。
2)指定搜索文件的扩展名:
一个文件夹中的文件类型可能有多种,有时需要寻找特定类型的文件,就需要截取扩展名并据此来判断。
截取文件扩展名使用方法os.path.splitext(path)[1],这里得到的是一个数组,扩展名的索引是1。
下列代码就是只查找具有html及htm扩展名的文件:
def gethtmlfile(path):
"""get html file only"""
target=['.html','.htm']
ext=os.path.splitext(path)[1]
if ext in target:
print(path)
这样就获取到了具有特定扩展名的文件,可以根据需要进行下一步的处理。