如何用Python删除电脑中的重复文件?

news2024/9/22 2:56:59

在生活中,我们经常会遇到电脑中文件重复的情况。

在文件较少的情况下,这类情况还比较容易处理,最不济就是一个个手动对比删除;

而在重复文件很多的时候,我们很难保证把重复文件全部删完。

这里给大家带来了一个便捷小方法——用Python来删除重复文件

练习时间

Python提供一个内置电脑文件管理库os模块,我们可以利用它来删除多余文件。

当一个文档里存在重复文件名,我们的系统会自动给我们重复的文件名更名,比如下图的文件“1”重复了3次:

那我们该怎么删除文件“1”的重复文件呢?

我们可以使用os模块的os.remove(path)函数,只需要指定path参数,也就是文件的路径,就可以删除文件。

这里需要提醒大家,一定是包含文件名的路径。

如果不是包含文件名的路径,就会报错,因为这是在删除整个文件夹。

代码演示

这里我们直接给大家展示代码:



import os           # 加载文件管理库

path = "D:\projects"
files = os.listdir(path)    # os.listdir(path) 列出path下的所有文件名的并以”列表“的形式返回
print(type(files))          # 验证files的类型
print("路径:{} 下拥有的文件是{}".format(path, files))        # 打印path下的所有文件名
files_delete = files[0:2]        #  找到自己要删除的文件名,这里我们也可以用input函数来指定我需要删除的文件哦!
print(files_delete)    #  打印要删除的文件名
for file_name in files_delete:
    file_path = os.path.join(path, file_name)      # 运用os.path.join(path, file_name)将文件路径与文件名拼接,形成一个新路径
    os.remove(file_path)                           # 删除文件

print("删除重复文件之后, path下的文件名有哪些:", os.listdir(path))  # 打印删除重复文件之后剩下的文件

这时再去我们指定的路径的文件夹里去看,重复的文件就被删除了!

代码中函数注解:

1. file_list = os.listdir(path): 列出指定文件路径(参数path)中的所有文件,并以列表形式返回。

2. file_path = os.path.join(path, “文件名”):将文件路径与文件名拼接,形成一个新路径.比如:os.path.join(path=“D:\projects”, “xiaobei.txt”)得到的结果为:“D\projects\xiaobei.txt”

3. os.remove(path)删除指定path的文件名。

Python入门学习资料

1.Python系统学习路线图

首先,对于没有学习方向,知识不体系的人,我把我工作几年整理的学习路线分享给大家,做一个借鉴作用,还不知道怎么学习的人可以直接照着我这个学习路线一个个的去学习,知识不体系的人可以参考下我整理路线的方式,总之希望能够帮到你们!

2.Python必备开发工具

3.看视频进行系统学习

先在网上康康达人分享的视频、干货,通俗易懂,形成初始概念;你会发现博主们在进阶成大神之前他们的学习途径有哪些,找到适合自己风格的课程;

不过这样学习技术比较杂乱,所以通过更加系统的视频来学习,效果更好,也更全面。

4.实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

最后

如果你也想自学Python,可以关注我。我会把踩过的坑分享给你,让你不要踩坑,提高学习速度,还整理出了一套系统的学习路线,这套资料涵盖了诸多学习内容:开发工具,基础视频教程,项目实战源码,51本电子书籍,100道练习题等。相信可以帮助大家在最短的时间内,能达到事半功倍效果,用来复习也是非常不错的。

在这里插入图片描述

希望这篇文章对你有帮助,也希望能帮到大家,因为你我都是热爱python的编程语言爱好者。
————————————————

↓↓↓↓

资料获取:已打包,添加文末 Python笔记领取即可获取!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1972390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《计算机组成原理》(第3版)第2章 计算机的发展及应用 复习笔记

第2章 计算机的发展及应用 一、计算机的产生和发展 (一)第一代电子管计算机 1943年,美国国防部批准了建造一台用电子管组成的电子数字积分机和计算机(Electronic Numerica1 Integrator And Computer,ENIAC&#xff…

2024年06月 Scratch 图形化(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch图形化等级考试(1~4级)全部真题・点这里 一、单选题(共10题,共30分) 第1题 运行下列程序,输入单词“PLAY”,最后角色说?( ) A:LY4AP B:AP4LY C:YA4PL D:PL4AY 答案:B 根据程序分析可知,首先获取单词字符数,然后奇数位的字母放在字符数左侧,偶数位…

基于STM32的嵌入式深度学习系统教程

目录 引言环境准备嵌入式深度学习系统基础代码实现:实现嵌入式深度学习系统 数据采集与预处理深度学习模型训练与优化模型部署与推理实时数据处理与反馈应用场景:智能物联网设备常见问题与解决方案收尾与总结 引言 随着深度学习在各种应用中的广泛采用…

HBuilder在uni-admin实现unicloud-map中poi管理

文章目录 新建uni-admin项目下载并导入插件申请地图key并配置(本人使用的腾讯地图)配置WebServiceAPI配置HBuilder中Web配置 启动项目进行菜单管理 新建uni-admin项目 新建项目时选择uni-admin模板 下载并导入插件 在unicloud介绍页面https://doc.dc…

GraphGNSSLib的RTKLIB——gnss_preprocessor.node的理解

gnss_preprocessor部分的理解,这是简单的几张流程图截图,自己的分析总结pdf在资源里,免费的,如果不占用大家资源可以下载,交流 整体的逻辑详见资源 ,我承诺这是自己系统分析RTKLIB后,进行的…

苹果iOS开发中的网络数据任务API:URLSession入门实战

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 URLSession 是 iOS 开发中的一个 API,用于执行网络数据任务,如 HTTP 请求、文件下载和上传等。URLSession 提供了一种高…

射频工程师主要是干什么?

在硬件从业者中,有一部分从业者是专门负责射频,天线,基站信号相关工作内容的,他们也被称为射频工程师。并且相比与普通的硬件工程师,硬件测试工程师,专门做射频部分的射频工程师,相同年限下薪资…

LLM:混合精度量化概述

浮点数在计算机中的存储方式由符号位(sign)、指数位(exponent)和小数位(fraction,也称为尾数、mantissa)组成。以下是对这些部分的详细说明: 符号位(Sign Bit&#xff09…

【Vue3】组件通信之props

【Vue3】组件通信之props 背景简介开发环境开发步骤及源码总结 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日…

发送邮箱调用接口时需要注意哪些安全事项?

发送邮箱调用接口的使用方法?如何集成三方API接口? 无论是系统通知、用户注册验证还是营销邮件,这些功能都依赖于邮件发送接口的稳定和安全。然而,确保这些接口的安全性是至关重要的,AokSend将详细讨论在发送邮箱调用…

超13万律师使用的工具,启信宝推出“司法大数据”功能

合合信息旗下的启信宝,作为行业领先的商业查询APP,依托其3亿企业及机构的实时动态数据,涵盖工商、股权、司法、知识产权等多维度信息,推出了“司法大数据”功能。 随着大数据、人工智能技术的发展,律师行业已转型为开…

怎么写文献综述

怎么写文献综述 写文献综述是对已有文献资料进行系统性和批判性的评述和总结,以了解当前研究领域的研究成果和发展动态。 以下是撰写文献综述的一般步骤: 选择主题和目标: 确定你要综述的主题领域,并明确综述的目标和范围。这有…

蓝牙网关和蓝牙MESH总结

可参考: https://zhuanlan.zhihu.com/p/695144946 蓝牙网关 参考: https://www.bilibili.com/read/cv28872282/ 蓝牙网关是一种特殊的网络设备,它能够实现蓝牙设备与互联网或其他类型网络之间的数据传输和通信。通过蓝牙网关,用户…

Leetcode238. 除自身以外数组的乘积(java实现)

今天分享的题目是letcode238. 除自身以外数组的乘积 先来看题目描述: 本道题我最先想到的是先乘积所有的元素,然后除以所有元素,但是本题无法使用除法。 本题的解题思路是使用前缀积。 拿nums[]{1,2,3,4}; 先遍历前缀积,num[0]的…

Spring AOP总结

1、AOP(Aspect-Oriented Programming):面向切面编程让开发更高效。 工作中经常需要处理日志记录、事物管理、安全控制等跨越多个业务模块的公共逻辑。 它是一种编程的范式。它通过将跨多个业务模块的公共逻辑抽取并封装成独立的模块&#xf…

人工智能大模型综述学习笔记

目录 一、深度学习的局限性和大模型发展背景 二、大模型架构 1、多头自注意力机制 2、Transformer架构 三、常见大模型发展概况 1、语言大模型发展概况 掩码语言模型解释 因果语言模型解释 何时使用什么? 2、视觉-语言大模型 四、大模型的特点 1、大模型…

uni-app项目打包成H5部署到服务器

1. uni-app项目打包成H5部署到服务器 前端使用 uniapp开发项目完成后,需要将页面打包,生成H5的静态文件,部署在服务器上。这样通过服务器链接地址,直接可以在手机上点开来访问。   将项目打包成H5部署到服务器,然后链…

Java中类的构造

1.私有化成员变量。 2.空参构造方法。 3.带全部参数的构造方法。 4.get / set方法。 package demo;public class student{//1.私有化成员变量。//2.空参构造方法。//3.带全部参数的构造方法。//4.get / set方法。private String name;private int age;public student() {}pu…

基于SpringBoot+Vue的多媒体信息共享平台(带1w+文档)

基于SpringBootVue的多媒体信息共享平台(带1w文档) 基于SpringBootVue的多媒体信息共享平台(带1w文档) 随着武理多媒体信息共享平台的不断出现,用户需求不断增多,武理多媒体信息共享平台也不断的得到壮大。该系统主要是满足多方面的需求的实际需要&#…

MySQL案例:MHA实现主备切换(主从架构)万字详解

目录 MHA 概念 MHA的组成 特点 案例介绍 (1)案例需求 (2)案例实现思路 (3)案例拓扑图 (4)案例环境 案例步骤 基本环境配置 关闭防火墙和内核安全机制 安装数据库 授权…