首页 > 其他分享 >罗列大地址下文件名在A列

罗列大地址下文件名在A列

时间:2023-10-27 11:44:17浏览次数:27  
标签:folders 文件名 os 罗列 地址 output path folder root

import os
import openpyxl

def find_image_folders(root_folder):
"""返回所有找到的包含图片的文件夹路径"""
image_folders = set()
for root, dirs, files in os.walk(root_folder):
for file in files:
if file.lower().endswith(('.png', '.jpg', '.jpeg')):
image_folders.add(root)
break
# 这里使用了多级排序:首先按照大层级,然后按照次层级,以此类推
return sorted(list(image_folders), key=lambda x: tuple(x.split(os.sep)))

def save_to_excel(folders, output_path):
"""将路径保存到Excel"""
wb = openpyxl.Workbook()
ws = wb.active

for idx, folder in enumerate(folders, 1):
ws.cell(row=idx, column=1).value = folder # 所有路径都保存在A列中

wb.save(output_path)

def main():
root_folder = input("请输入大地址: ")
folders = find_image_folders(root_folder)
output_path = os.path.join(root_folder, "批量操作文件名.xlsx")

if os.path.exists(output_path):
base_name = "批量操作文件名"
counter = 1
while os.path.exists(output_path):
counter += 1
output_path = os.path.join(root_folder, f"{base_name}_{counter}.xlsx")

save_to_excel(folders, output_path)
print(f"地址已保存到: {output_path}")

if __name__ == "__main__":
main()

标签:folders,文件名,os,罗列,地址,output,path,folder,root
From: https://www.cnblogs.com/zly324/p/17791918.html

相关文章

  • Python给你一个字符串,你怎么判断是不是ipv4地址?手写这段代码,并写出测试用例【杭州多测
    ipv4地址的格式:(1~255).(0 ~255).(0 ~255).(0 ~255)1.正则表达式importredefcheck_ip(one_str):compile_ip=re.compile('^(([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$')ifcompile_ip.match(one_str):......
  • (打标签)文件名空格和下划线的转换,指定数量的单元为下划线,剩下的是空格
    importosdefcount_a(filename):"""统计文件名中的a的数量,其中a是空格或下划线"""returnsum(1forcharinfilenameifcharin['_',''])defparse_a_range(a_range):"""解析a范围输入,并返回所有a的索引""&q......
  • 获取配置json地址
    //加载配置文件varconfigurationBuilder=newConfigurationBuilder();//添加配置文件路径configurationBuilder.SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");//获取Url信息varconfiguration=configurationBuilder.Build();stringname......
  • 在不知带头节点地址的情况下删除和插入一个p指针指向的节点总结
    在不知带头节点地址的情况下删除和插入一个p指针指向的节点总结(p指向的不是第一个,也不是最后一个)A->B->C*p->B插入(在p结点之前插入q)解析:直接往p前插入q,由于没有头节点,不能遍历到p的位置,所以向p的后面插入q,在交换p、q的值q->next=p->next;p->next=q;swap(&p......
  • Python自动化测试selenium指定截图文件名方法
    这篇文章主要介绍了Python自动化测试selenium指定截图文件名方法,Selenium支持Web浏览器的自动化,它提供一套测试函数,用于支持Web自动化测试,下文基于python实现指定截图文件名方法,需要的小伙伴可以参考一下前言:Selenium支持Web浏览器的自动化,它提供一套测试函数,用于支持W......
  • java如何从Content-Disposition获取文件名的正则表达式
    一,主要是关于:post请求下载文件,如何从Content-Disposition获取文件名的正则表达式记录:HttpResponsehttpResponse=httpRequest.execute();byte[]bytes=httpResponse.bodyBytes();Stringheader=httpResponse.header("Content-Disposition")......
  • Elastic Search相关下载地址
    以7.16.2为例(版本保持一致)ES: https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-16-2Kibana:  https://www.elastic.co/cn/downloads/past-releases/kibana-7-16-2Analysis-ik:  https://github.com/medcl/elasticsearch-analysis-ikLogstash: http......
  • 华为镜像jdk,阿里maven地址
    https://repo.huaweicloud.com/java/jdk/maven仓库https://developer.aliyun.com/mirror/maven安装了maven,但在执行mvn-v或maven-versions时提示bash:maven:未找到命令...应该是环境变量出错,把MAVEN_HOME的路径换到PATH上就可以了,如下:exportJAVA_HOME=/usr/local/java......
  • 揭秘计算机内部通信:探秘数据、地址与控制信号的奥秘
    引言在我们前面的讲解中,我们详细了解了计算机系统的核心组件,包括CPU、内存和磁盘。然而,总线在这个体系中同样至关重要。总线是计算机内部各部件间通信的桥梁,涉及数据、地址和控制信号的传输。在接下来的内容中,我们将深入探讨各种类型的总线,为你解析计算机系统的关键组成部分。总......
  • 关于CH32V系列MCU FLASH地址的分配
    来源:https://www.cnblogs.com/liaigu/p/17784283.html关于在MRS开发环境下,针对CH32V系列MCUFLASH分配,具体方法如下:比如开辟一段空间,存放数组等数据,首先在ld文件中修改FLASH分配,如下图:.consumer_flash1:{.=ALIGN(4);}AT>FLASH1.consumer......