python递归列出目录及其子目录下所有文件 一.前言 函数的递归,简单来说,就是函数内部调用自己 先举个小例子,求阶乘 def factorial(n): if n == 0: return 1 else: return n * factorial(n-1) 递归要注意两个事项: 1.必须要有最后的默认结果,也就是最底层目录的默认结果 if n == 0 2.递归参数必须向默认结果收敛 factorial(n-1) 要用到 os 模块下的几个方法 要用到 os 模块下的几个方法 二.递归列出目
今天有个脚本需要遍历获取某指定文件夹下面的所有文件,我记得很早前也实现过文件遍历和目录遍历的功能,于是找来看一看,嘿,不看不知道,看了吓一跳,原来之前我竟然用了这么搓的实现. 先发出来看看: def getallfiles(dir): """遍历获取指定文件夹下面所有文件""" if os.path.isdir(dir): filelist = os.listdir(dir) for ret in filelist: filename = dir
Python之文件处理-递归删除特定文件 #!/usr/bin/env python # -*- coding:utf-8 -*- import os def delete_particular_file(top): for root, dirs, files in os.walk(top, topdown=False): for file_name in files: if file_name.split('.')[-1] == 'ipynb': delete_file_name = os.p
Python操作文件和目录 读写文件比较简单,有一点特别注意就好了 windows下Python默认打开的文件以gbk解码,而一般我们的文件是utf-8编码的,所以如果文本含有中文,就会出现异常或者乱码.此时手动添加encoding='utf-8'表示以utf-8的方式打开. 当然Python写入时候,也是默认以gbk的编码写入.而文件通常是utf-8格式保存的,所以若不指定写入的编码方式,一写入中文就是乱码了 with open('abc.txt', encoding='utf-8') as