python的文件的自动化处理

embedded/2024/11/14 12:41:24/

常见的文件自动化处理

  1. 输出当前路径下的所所有文件及文件夹
  2. 快捷查看某路径喜爱所有文件
  3. 查询文件具体的详细信息
  4. 文件批量重命名
  5. 快速去重文本重复

1、解释说明

  • 输出当前路径下的所有文件及文件夹:使用os模块的listdir()函数,可以列出指定目录下的所有文件和文件夹。
  • 快捷查看某路径下所有文件:同样使用os模块的listdir()函数,只需传入目标路径即可。
  • 查询文件具体的详细信息:使用os模块的stat()函数,可以获取文件的详细信息,如大小、创建时间等。
  • 文件批量重命名:使用os模块的rename()函数,可以对文件进行重命名操作。
  • 快速去重文本重复:可以使用集合(set)的特性,将文本内容转换为集合,从而去除重复项。

2.代码实现

文件夹操作

python">import os# 输出当前路径下的所有文件及文件夹
print(os.listdir())# 快捷查看某路径下所有文件
path = "/path/to/your/directory"
print(os.listdir(path))# 查询文件具体的详细信息
file_info = os.stat("example.txt")
print(file_info)

文件批量操作

我先说一下,文件批量操作的一个思路

  1. 首先,我们需要遍历目标文件夹,获取所有文件的文件名。
  2. 然后,我们需要检查每个文件名是否重复。如果重复,我们需要修改这些文件名以避免冲突。
  3. 最后,我们需要确保新的文件名是唯一的,可以通过添加一个唯一的后缀(例如,数字或时间戳)来实现。
    代码实现如下:
python">import os
import redef batch_rename_files(folder_path):# 获取文件夹中的所有文件名file_names = os.listdir(folder_path)# 创建一个字典来存储文件名及其出现的次数name_count = {}# 遍历文件名,统计每个文件名的出现次数for name in file_names:if name in name_count:name_count[name] += 1else:name_count[name] = 1# 遍历文件名,对于重复的文件名,添加一个唯一的后缀for name in file_names:if name_count[name] > 1:new_name = re.sub(r'(\.\w+)$', r'_\d+\1', name, count=1)os.rename(os.path.join(folder_path, name), os.path.join(folder_path, new_name))name_count[new_name] = 1# 调用函数,传入需要处理的文件夹路径
batch_rename_files("your_folder_path")

快速去重文本重复

python">
# 快速去重文本重复
def remove_duplicates(text):return ''.join(sorted(set(text), key=text.index))text = "hello world hello python"
print(remove_duplicates(text))

http://www.ppmy.cn/embedded/112467.html

相关文章

python多线程程序设计 之一

python多线程程序设计 之一 全局解释器锁线程APIsthreading.active_count()threading.current_thread()threading.excepthook(args, /)threading.get_native_id()threading.main_thread()threading.stack_size([size]) 线程对象成员函数构造器start/runjoin 线程子类 实列代码 …

【物联网技术大作业】设计一个智能家居的应用场景

前言: 本人的物联网技术的期末大作业,希望对你有帮助。 目录 大作业设计题 (1)智能家居的概述。 (2)介绍智能家居应用。要求至少5个方面的应用,包括每个应用所采用的设备,性能&am…

Springboot中mybatis的使用

一.创建Springboot项目并加载依赖 1.利用IDEA创建SpringBoot项目,并勾选必须依赖,步骤如下(IDEA版本为2024版) 注意: 1.首先更换镜像源,否则加载配置环境比较慢,网上搜阿里的镜像源就行。 2…

Vue 也能这样玩?Vuetify 打造超强大的UI体验

Vue 也能这样玩?Vuetify 打造超强大的UI体验! 在前端开发的世界里,选择一个合适的 UI 组件库就像选择一把趁手的兵器。Vuetify 作为一款基于 Vue 的 Material Design 组件库,凭借其强大的功能和活跃的社区,已经成为了无…

速盾:你知道高防 IP 和高防 CDN 的区别吗?

在当今网络安全形势日益严峻的情况下,网站的安全防护成为了企业和个人关注的焦点。高防 IP 和高防 CDN 作为两种常见的网络安全防护手段,被广泛应用于网站的安全防护中。那么,高防 IP 和高防 CDN 有什么区别呢?防护网站哪个更好呢…

XShell快速连接虚拟机(Ubuntu系统)

目录 前言 一 (XShell)(虚拟机 )(Ubuntu)下载 二 虚拟机的ip查找 三 虚拟机中安装连接环境 四 开启ssh-server服务 五 验证是Ubuntu是否开启ssh-server服务 六 连接XShell软件 前言 对于刚开始探索 Linux 世界的新手来说,拥有一台自己的服务器可能并不现实。幸运的…

Java 入门指南:JVM(Java虚拟机)——类的生命周期与加载过程

文章目录 类的生命周期类加载过程1)载入(Loading)2)验证(Verification)文件格式验证符号引用验证 3)准备(Preparation)4)解析(Resolution&#xf…

【Chrome】开发一个Chrome扩展以及常见问题的解决方案

前言 本文介绍开发chrome扩展很重要的几种操作,如:操作网页dom、发送请求、渲染弹层、不同沙盒环境的通信方式、扩展与网页的通信方式、遇到iframe时的操作等。最终会提供一个简单的案例,其中涵盖了上述操作。 还有一些本人相关文章&#x…