python中遍历文件的3个方法
今天写一个在windows下批量修改文件名的python脚本,用到文件的遍历。用python进行文件遍历有多种方法,这里列举并说明一下。
os.path.walk()
这是一个传统的用法。
walk(root,callable,args)方法有三个参数:要遍历的目录,回调函数,回调函数的参数(元组形式)。
调用的过程是遍历目录下的文件或目录,每遍历一个目录,调用回调函数,并把args作为参数传递给回调函数。
回调函数定义时也有三个参数,比如示例中的func中的三个参数,分别为walk传来的参数、目录的路径、目录下的文件列表(只有文件名,不是完整路径)。请看示例:
importos s=os.sep #根据unix或win,s为\或/ root="d:"+s+"ll"+s #要遍历的目录
deffunc(args,dire,fis): #回调函数的定义 forfinfis: fname=os.path.splitext(f) #分割文件名为名字和扩展名的二元组 new=fname[0]+'b'+fname[1] #改名字 os.rename(os.path.join(dire,f),os.path.join(dire,new)) #重命名
os.path.walk(root,func,()) #遍历