方法1:
def getFileName(path):
''' 獲取指定目錄下的所有指定后綴的文件名 '''
f_list = os.listdir(path)
# print f_list
for i in f_list:
# os.path.splitext():分離文件名與擴展名
if os.path.splitext(i)[1] == '.log':
print(i)
if __name__ == '__main__':
path = '/home/xx/work/ETS/log/1/1'
getFileName(path)
小結:無法遍歷二級文件夾。
方法2:
#!/usr/bin/python import os for root , dirs, files in os.walk(r'E:\.m2\repository'): for name in files: if name.endswith(".repositories") or name.endswith(".sha1"): os.remove(os.path.join(root, name)) print ("Delete File: " + os.path.join(root, name)) os.system("pause")
方法3:
#coding=utf-8 import os def list_allfile(path,all_files=[],all_py_files=[]): if os.path.exists(path): files=os.listdir(path) else: print('this path not exist') for file in files: if os.path.isdir(os.path.join(path,file)): list_allfile(os.path.join(path,file),all_files) else: all_files.append(os.path.join(path,file)) for file in all_files: if file.endswith('.py'): all_py_files.append(file) return all_py_files if __name__ == "__main__": print(list_allfile(r'D:\學習資料\kira'))
方法4:
匹配時也可用正則表達式來。
#coding=utf-8 import os import re def list_allfile(path,all_files=[],all_py_files=[]): if os.path.exists(path): files=os.listdir(path) else: print('this path not exist') for file in files: if os.path.isdir(os.path.join(path,file)): list_allfile(os.path.join(path,file),all_files) else: all_files.append(os.path.join(path,file)) for file in all_files: if re.match('.+\.py$',file): all_py_files.append(file) return all_py_files if __name__ == "__main__": print(list_allfile(r'D:\學習資料\kira'))
方法3、4來源:python遍歷文件夾找到指定后綴名結尾的文件 - 知乎 (zhihu.com)
方法1來源:(43條消息) python獲取指定目錄下的所有指定后綴的文件名_zhuxiongxian的博客-CSDN博客_python 搜索后綴文件
方法2來源:(43條消息) python遍歷刪除指定后綴文件_taoyuanforrest的博客-CSDN博客_python刪除指定后綴文件
