• 技术文章 >Python技术 >Python基础教程

    python文件排序都有哪些方法

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-12-04 15:40:52原创5211

    在python环境中提供两种排序方案:用库函数sorted()对字符串排序,它的对象是字符;用函数sort()对数字排序,它的对象是数字,如果读取文件的话,需要进行处理(把文件后缀名‘屏蔽’)。

    (1)首先:我测试的文件夹是/img/,里面的文件都是图片,如下图所示:

    5e456c82768e849deb5d28f4bf56f0f.png

    (2)测试库函数sorted(),直接贴出代码:

    import numpy as np
    import os
     
    img_path='./img/'
     
    img_list=sorted(os.listdir(img_path))#文件名按字母排序
    img_nums=len(img_list)
    for i in range(img_nums):
        img_name=img_path+img_list[i]
        print(img_name)

    运行效果如下:

    d1bae9b804c553b4d24a6e0381710b4.png

    从图片可以清晰的看出,文件名是按字符排序的。

    (3)测试函数sort(),代码:

    import numpy as np
    import os
    img_path='./img/'
     
    img_list=os.listdir(img_path)
    img_list.sort()
    img_list.sort(key = lambda x: int(x[:-4])) ##文件名按数字排序
    img_nums=len(img_list)
    for i in range(img_nums):
        img_name=img_path+img_list[i]
        print(img_name)

    运行效果如下:

    f2e1a74694600bcc7591d32a02c30ba.png

    可以看出,文件名是按数字排序的;顺便提下,sort函数中用到了匿名函数(key = lambda x:int(x[:-4])),其作用是将后缀名'.jpg'“屏蔽”(因为‘.jpg’是4个字符,所以[:-4]的含义是从文件名开始到倒数第四个字符为止),具体看python的匿名函数和数组取值方式。

    python学习网,免费的在线学习python平台,欢迎关注!

    专题推荐:python 文件排序 方法
    上一篇:python有什么进阶的书 下一篇:python如何做三维图

    相关文章推荐

    • 细说python3中sort和sorted• Python排列函数sort和sorted的区别

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网