python中文件分类_python实现根据文件格式分类

本文介绍了使用Python的os和shutil模块实现根据文件扩展名对文件进行分类的方法。代码遍历指定路径下所有文件,根据文件扩展名创建相应文件夹,并将文件移动到对应扩展名的文件夹内,提高了文件管理效率。
摘要由CSDN通过智能技术生成

本文实例为大家分享了python根据文件格式分类的具体代码,供大家参考,具体内容如下

使用到python内置os模块(对目录或文件的新建/删除/属性查看,还提供了对文件以及目录的路径操作)、shutil模块(高等级的目录或文件的移动/复制/打包/压缩/解压等操作)

import os,shutil,time

def files_classfy(target_path):

global count #定义全局变量

file_list = os.listdir(target_path) #列出目标路径下的所有文件列表

for file in file_list: #遍历取到每一个文件名

os.chdir(target_path) #改变当前工作目录为目标路径

if file.find('.') == -1: #如果当前文件名中无扩展名则跳过

continue

filetype = file.split('.')[-1] #取得文件扩展名格式,windows下文件需设置为扩展名可见

if not os.path.exists(filetype):

os.mkdir(filetype) #如果工作目录下不存在以当前扩展名命名的文件夹则创建该文件夹(默认属性为0777)

new_path = os.path.join(target_path,'%s'%filetype) #取得当前扩展名文件夹路径

os.chdir(new_path)

if os.path.exists(file): #如果当前扩展名文件夹中已存在同名文件则跳过

continue

else:

os.chdir(target_path) #将工作目录切换回目标文件夹

shutil.move(file,filetype) #移动相同格式的文件到对应的格式文件夹

count+=1

start = time.time()

count = 0

path = "G:\picture\mi5splus"

files_classfy(path)

total_time = time.time() - start

print("程序运行时间:%0.2f"%total_time)

print("共处理图片:%d"%count)

运行结果:

20191031103032931.jpg?2019931103042

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: python实现根据文件格式分类

本文地址: http://www.cppcns.com/jiaoben/python/283399.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现文文本分类,一般需要进行以下几个步骤: 1. 数据预处理:对文文本进行分词,去除停用词等操作,将文本转化为词向量表示。 2. 特征选择:使用TF-IDF对文本进行特征选择,选择出对分类有帮助的特征词。 3. 构建分类器:使用机器学习算法或者深度学习算法构建分类器,比如朴素贝叶斯、支持向量机、神经网络等。 以下是一个简单的示例代码,使用朴素贝叶斯算法进行文文本分类: ```python import jieba from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.naive_bayes import MultinomialNB # 加载数据 with open('data.txt', 'r', encoding='utf-8') as f: data = f.readlines() # 分词 data = [list(jieba.cut(line.strip())) for line in data] # 转化为符串 data = [' '.join(line) for line in data] # 特征选择 tfidf = TfidfVectorizer() X = tfidf.fit_transform(data) # 构建分类器 y = [0, 1, 0, 1, 0, 1] # 标签 clf = MultinomialNB() clf.fit(X, y) # 测试 test_data = ['这是一篇关于机器学习的文章', 'python是一门很好的编程语言'] test_data = [list(jieba.cut(line.strip())) for line in test_data] test_data = [' '.join(line) for line in test_data] X_test = tfidf.transform(test_data) y_pred = clf.predict(X_test) print(y_pred) ``` 需要注意的是,上述代码仅是一个简单的示例,实际应用还需要进行更加细致的数据预处理和特征选择,并且需要考虑到模型的评估和调参等问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值