python如何按照自己顺序读出文件名

 更新时间:2023年08月17日 08:54:25   作者:JackWang(dog)  
这篇文章主要介绍了python如何按照自己顺序读出文件名问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

情景再现

在做一个批量读取文件夹txt文件内容后,将文件内容写入excel表格的简单脚本时使用到了os.listdir()函数。

当脚本完成后检查excel表格内容时发现表格内容顺序和txt文件顺序不一样,这就导致我剩下的工作全部GG(超级难受)。

然后就去着手解决python os.listdir()读出顺序乱序问题。

为什么os.listdir()读出会乱序?

我也不知道,那位大佬知道了麻烦评论教教我!!!!!

解决乱序(即按照自己的要求排序)

首先看一般情况下读出顺序:

files= os.listdir(path) #得到文件夹下的所有文件名称

读出的文件顺序是:

在这里插入图片描述

而在文件夹中所显示的文件排列顺序确实这样的:

在这里插入图片描述

这个顺序是不是很让人摸不到头脑。

该怎么按照我们想要的顺序排列呢?

我后来想一想,这读出来的文件名字不就一列表嘛,我们把这个列表按我们想要的顺序排列好不就可以啦。

我们可以看到文件夹中的排序方式是先按照cache后的数字排序然后再按照第五个字母 a,b,s排序。

所以我们就按照这个方式来排序。

def takeNumber(elem): #获取cache后面的数字
    pattern = re.compile('cache(.+).txt')
    num = int(pattern.findall(elem)[0])
    return num
files= os.listdir(path) #得到文件夹下的所有文件名称
txts = []
all_data = []
files.sort(key=takeNumber)
files.sort(key= lambda x: x[4])   #lambda函数也叫匿名函数,即,函数没有具体的名称

最后看结果就是我们想要的顺序:

在这里插入图片描述

总结

总而言之,读出文件的顺序可以转化为对列表的排序。这类排序没有固定的方法,见招拆招,兵来将挡,水来土掩才是好办法。

另外,对于正则表达式和lambda匿名函数也要有一定的了解才能做好(别问我是怎么知道的,菜鸡落泪)。

以上仅为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python GUI编程之tkinter模块Toplevel控件实现搭建父子窗口

    Python GUI编程之tkinter模块Toplevel控件实现搭建父子窗口

    这篇文章主要介绍了Python使用tkinter模块Toplevel控件搭建父子窗口的实现方法,Tkinter是Python的标准GUI库,Python使用Tkinter可以快速的创建GUI应用程序,用到相关控件的同学可以参考下
    2023-12-12
  • Python办公自动化之自动化文本翻译详解

    Python办公自动化之自动化文本翻译详解

    这篇文章主要为大家详细介绍了Python办公自动化中自动化文本翻译的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-01-01
  • Python玩转PDF的各种骚操作

    Python玩转PDF的各种骚操作

    Portable Document Format(可移植文档格式),或者PDF是一种文件格式,可以用于跨操作系统的呈现和文档交换。这篇文章主要介绍了Python玩转PDF的各种骚操作,需要的朋友可以参考下
    2019-05-05
  • python实现爬虫抓取小说功能示例【抓取金庸小说】

    python实现爬虫抓取小说功能示例【抓取金庸小说】

    这篇文章主要介绍了python实现爬虫抓取小说功能,结合具体实例形式分析了使用Python爬虫抓取金庸小说的具体操作技巧,需要的朋友可以参考下
    2019-08-08
  • python检测主机的连通性并记录到文件的实例

    python检测主机的连通性并记录到文件的实例

    今天小编就为大家分享一篇python检测主机的连通性并记录到文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python查找多个字典公共键key的方法

    Python查找多个字典公共键key的方法

    这篇文章主要介绍了Python查找多个字典公共键key案例,文章主要通过案例分享展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-04-04
  • Python实现Gif图片分解的示例代码

    Python实现Gif图片分解的示例代码

    这篇文章主要为大家详细介绍了如何利用Python语言实现Gif图片分解功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起动手尝试一下
    2022-08-08
  • Python break语句详解

    Python break语句详解

    这篇文章主要介绍了Python break语句的作用、使用方法,需要的朋友可以参考下
    2014-03-03
  • Python结合DeepSeek API实现PDF转Word的方案

    Python结合DeepSeek API实现PDF转Word的方案

    随着信息化时代的不断推进,PDF和Word文件格式已经成为了日常办公中最常见的文档格式,在许多工作场景中,我们需要将PDF文件转换成Word格式,本文将介绍如何结合DeepSeek API与Python,快速实现一个PDF转Word的工具,需要的朋友可以参考下
    2025-02-02
  • Python编程实现二分法和牛顿迭代法求平方根代码

    Python编程实现二分法和牛顿迭代法求平方根代码

    这篇文章主要介绍了Python编程实现二分法和牛顿迭代法求平方根代码,具有一定参考价值,需要的朋友可以了解下。
    2017-12-12

最新评论