Python获取指定文件夹中的所有文件名脚本

1.获取指定文件夹中的所有文件名

要获取指定文件夹中的所有文件名,您可以使用 os.listdir
函数来列出文件夹中的所有文件和文件夹,然后使用 os.path.isfile
函数来过滤出仅为文件的项。示例代码:

import osdef get_file_names(folder_path):file_names = []for item in os.listdir(folder_path):item_path = os.path.join(folder_path, item)if os.path.isfile(item_path):  # 只处理文件,忽略文件夹file_names.append(item)  # 将文件名添加到列表中return file_namesfolder_path = "your_folder_path"  # 替换为您的文件夹路径file_names = get_file_names(folder_path)
print(file_names)

在这个示例中,get_file_names函数接受文件夹路径作为参数,并创建一个空列表file_names。然后,它使用 os.listdir
遍历文件夹中的所有项,并使用 os.path.isfile 来过滤出仅为文件的项。对于每个文件,它将文件名添加到 file_names列表中。请将"your_folder_path"替换为实际的文件夹路径。函数将返回一个包含指定文件夹中所有文件名的列表。您可以使用 print 函数打印出文件名列表。

2.更高级的写法

如果您想要使用更高级的写法来获取指定文件夹中的所有文件名,可以使用列表推导式。以下是一个使用列表推导式的示例代码:

import osdef get_file_names(folder_path):return [item for item in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, item))]folder_path = "your_folder_path"  # 替换为您的文件夹路径file_names = get_file_names(folder_path)
print(file_names)

在这个示例中,我们使用列表推导式来简化代码。列表推导式的语法是 [expression for item in list if condition],它会遍历列表,并根据条件筛选出满足条件的项,并对每个项应用表达式。

在我们的示例中,列表推导式首先使用 os.listdir 函数遍历文件夹中的所有项。然后,使用 os.path.isfile 函数和 os.path.join 函数结合来判断每个项是否为文件。如果是文件,则将其添加到生成的列表中。
请将 “your_folder_path” 替换为实际的文件夹路径。函数将返回一个包含指定文件夹中所有文件名的列表。您可以使用 print 函数打印出文件名列表。

3.文件夹下,只保留最大的zip包

指定文件夹下,对多个zip文件按文件大小排序,只保留最大的zip包

import os
import glob# 指定文件夹路径
folder_path = "/path/to/your/folder"# 获取文件夹下所有的zip文件
zip_files = glob.glob(os.path.join(folder_path, "*.zip"))# 按文件大小排序
zip_files.sort(key=os.path.getsize, reverse=True)# 保留最大的zip文件,删除其他zip文件
for i in range(1, len(zip_files)):os.remove(zip_files[i])print("保留最大的zip文件完成。")

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

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

相关文章

linux 中 ext2文件系统实现

ext2文件系统结构 图片的svg下载链接(图中关于buffer的部分,上下两部分是重复的,是从不同维度下看的buffer结构) linux内核本身不提供ext2文件系统的格式化功能,可以参考busybox中对mkfs.ext2的实现(mkfs.…

sheng的学习笔记-【中】【吴恩达课后测验】Course 4 -卷积神经网络 - 第二周测验

课程4_第2周_测验题 目录 第一题 1.在典型的卷积神经网络中,随着网络的深度增加,你能看到的现象是? A. 【  】 n H n_H nH​和 n W n_W nW​增加,同时 n C n_C nC​减少 B. 【  】 n H n_H nH​和 n W n_W nW​减少&#x…

【论文笔记】Run, Don’t Walk: Chasing Higher FLOPS for Faster Neural Networks

论文地址:Run, Dont Walk: Chasing Higher FLOPS for Faster Neural Networks 代码地址:https://github.com/jierunchen/fasternet 该论文主要提出了PConv,通过优化FLOPS提出了快速推理模型FasterNet。 在设计神经网络结构的时候&#xff…

性能优化,让用户体验更加完美(渲染层面)

前言 上一篇我们已经围绕“网络层面”探索页面性能优化的方案,接下来本篇围绕“浏览器渲染层面”继续开展探索。正文开始前,我们思考如下问题: 浏览器渲染页面会经过哪几个关键环节?“渲染层面”的优化从哪几方面着手&#xff1f…

初试Kafka

Kafka 是一个分布式流处理平台,通常用作消息中间件,它可以处理大规模的实时数据流。以下是从零开始使用 Kafka 作为消息中间件的基本教程: 步骤 1: 下载和安装 Kafka 访问 Apache Kafka 官方网站:Apache Kafka下载最新的 Kafka …

【Redis】一文掌握Redis原理及常见问题

Redis是基于内存数据库,操作效率高,提供丰富的数据结构(Redis底层对数据结构还做了优化),可用作数据库,缓存,消息中间件等。如今广泛用于互联网大厂,面试必考点之一,本文…

2022年山东省职业院校技能大赛高职组云计算赛项试卷第三场-公有云

2022年山东省职业院校技能大赛高职组云计算赛项试卷 目录 2022年职业院校技能大赛高职组云计算赛项试卷 【赛程名称】云计算赛项第三场-公有云 【任务1】公有云服务搭建[10分] 【适用平台】华为云 【题目1】私有网络管理[0.5分] 【题目2】云实例管理[0.5分] 【题目3】数…

什么是 MVVM?

Model–View–ViewModel (MVVM) 是一个软件架构设计模式,由微软 WPF 和 Silverlight 的架构师 Ken Cooper 和 Ted Peters 开发,是一种简化用户界面的事件驱动编程方式。 由 John Gossman(同样也是 WPF 和 Silverlight…

.NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布

作者: Jon Galloway - Principal Program Manager, .NET Community Team Mehul Harry - Product Marketing Manager, .NET, Azure Marketing 排版:Alan Wang .NET Conf 2023 是有史以来规模最大的 .NET 会议,来自全球各地的演讲者进行了 100 …

设计模式-注册模式

设计模式专栏 模式介绍模式特点应用场景注册模式和单例模式的区别代码示例Java实现注册模式Python实现注册模式 注册模式在spring中的应用 模式介绍 注册模式是一种设计模式,也称为注册树或注册器模式。这种模式将类的实例化和创建分离开来,避免在应用程…

【广州华锐互动】VR科技科普展厅平台:快速、便捷地创建出属于自己的虚拟展馆

随着科技的不断进步,虚拟现实(VR)技术已经在许多领域取得了显著的成果。尤其是在展馆设计领域,VR科技科普展厅平台已经实现了许多令人瞩目的新突破。 VR科技科普展厅平台是广州华锐互动专门为企业和机构提供虚拟展馆设计和制作的在线平台。通过这个平台&…

Flink on K8S集群搭建及StreamPark平台安装

1.环境准备 1.1 介绍 在使用 Flink&Spark 时发现从编程模型, 启动配置到运维管理都有很多可以抽象共用的地方, 目前streampark提供了一个flink一站式的流处理作业开发管理平台, 从流处理作业开发到上线全生命周期都做了支持, 是一个一站式的流出来计算平台。 未来spark开…

Git基础学习_p1

文章目录 一、前言二、Git手册学习2.1 Git介绍&前置知识2.2 Git教程2.2.1 导入新项目2.2.2 做更改2.2.3 Git追踪内容而非文件2.2.4 查看项目历史2.2.5 管理分支🔺2.2.6 用Git来协同工作2.2.7 查看历史 三、结尾 一、前言 Git相信大部分从事软件工作的人都听说过…

ASP.NET MVC的5种AuthorizationFilter

一、IAuthorizationFilter 所有的AuthorizationFilter实现了接口IAuthorizationFilter。如下面的代码片断所示,IAuthorizationFilter定义了一个OnAuthorization方法用于实现授权的操作。作为该方法的参数filterContext是一个表示授权上下文的AuthorizationContext对…

从计算机内存结构到iOS

一、冯.诺伊曼结构 当前计算机都是冯.诺伊曼结构(Von Neumann architecture),是指存储器存放程序的指令以及数据,在程序运行时根据需要提供给CPU使用。 冯.诺伊曼瓶颈 在目前的科技水平之下,CPU与存储器之间的读写速…

挑战与应对:迅软科技探讨IT企业应对数据泄密危机的智慧之路

随着信息技术的快速发展,软件IT行业面临着前所未有的数据安全挑战。黑客攻击、病毒传播、内部泄密等安全威胁层出不穷,给企业的核心资产和运营带来严重威胁。同时,国家对于数据安全的法律法规也日益严格,要求企业必须采取更加有效…

https密钥认证、上传镜像实验

一、第一台主机通过https密钥对认证 1、安装docker服务 (1)安装环境依赖包 yum -y install yum-utils device-mapper-persistent-data lvm2 (2)设置阿里云镜像源 yum-config-manager --add-repo http://mirrors.aliyun.com/do…

ElasticSearch 数据备份参考

ElasticSearch 数据备份参考 总结: 规模数据建议使用Snapshot and Restore功能,或者用LogStash,小规模数据可以用 elasticdump。 官方建议: 在灾难中,快照可以防止永久数据丢失。快照生命周期管理是对集群进行定期备份…

VLAN简介

在配置交换机或者传输设备时,经常会提到vlan,这个vlan具体是啥呢? VLAN(Virtual Local Area Network)中文名为“虚拟局域网”。它是一种在物理网络上划分出逻辑网络的方法,将物理上的局域网在逻辑上划分为多…

设计模式——适配器模式(Adapter Pattern)

概述 适配器模式可以将一个类的接口和另一个类的接口匹配起来,而无须修改原来的适配者接口和抽象目标类接口。适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装…