python3小项目1-文件操作之文件分类整理
设计思路:
#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# File : 文件分类小案例.py
# Author: DaShenHan&道长-----先苦后甜,任凭晚风拂柳颜------
# Date : 2019/3/19
# 设计思路:
# 1.遍历所有的文件
#
# 2.分解文件的后缀名
#
# 3.查看一下,是否存在同名的目录
#
# 4.如果不存在>创建一个这样的目录
#
# 5.将对应后缀文件移动到对应的目录
import os
os.chdir('files')
# f1=open('xx.jpg','wb')
# # f1.close()
# # f1=open('xx.png','wb')
# # f1.close()
# # f1=open('xx.mp4','wb')
# # f1.close()
# # f1=open('xx1.mp4','wb')
# # f1.close()
dir=os.listdir('./')
def method1():
for i in dir:
if i.rfind('.')!=-1:
a=i.split('.')
print(a[0],a[1])
print(i)
if not os.path.exists(a[1]):
os.mkdir(a[1])
os.rename(i,'%s/%s'%(a[1],i))
def methond2():
for i in dir:
if i.rfind('.')!=-1:
index=i.rfind('.')#返回最后一个.的索引位置
houzhui=i[index+1::]
print(houzhui)
if not os.path.exists(houzhui):
os.mkdir(houzhui)
os.rename(i,'%s/%s'%(houzhui,i))
def listFiles(dir):#递归方法实现生成文件列表清单
a=os.listdir(dir)
# print(filelsit)
# return filelsit
for i in a:
filename=dir+'/'+i
if os.path.isdir(filename):
print(filename)
listFiles(filename)
else:
print('\t'+i)
def listFilestotxt(dir,file):#递归方法实现生成文件列表清单
a=os.listdir(dir)
# print(filelsit)
# return filelsit
for i in a:
filename=dir+'/'+i
if os.path.isdir(filename):
print(filename)
file.write(filename+'\n')
listFilestotxt(filename,file)
else:
fm='\t'+i
print(fm)
file.write(fm+ '\n')
# methond2()
# listFiles('../files')
f=open('list.txt','a')
listFilestotxt('../files',f)
其他说明,移动操作时,os.rename在一定情况下实现文件的移动操作 ,当然,移动文件大多数时候借助另外一个模块
import shutil
shutil.move(filename,path)