zoukankan      html  css  js  c++  java
  • 有序读出文件夹下的文件

    file_names = fnmatch.filter(os.listdir(folder), '*.jpeg')

    # take care of folder sequence, 1.jpeg, 2.jpeg, 3.jpeg

    coll.sort(key=lambda x:int(x[:-5]))

    or
    file_names.sort(key=lambda x:len(x))

    1. os.listdir()概述

        os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。

    例如:

        dir ='F:/Home_01/img'#当前目录

        filenames=os.listdir(dir)#filenames存储dir下的所有文件名。

        注意:os.listdir()返回的文件名不一定是顺序的,也就是说结果是不固定的,如下图,则filenames[0]有可能为‘22.jpg’,而不是我们所希望的‘11.jpg’。

        解决办法:

        filenames=os.listdir(dir)

        filenames.sort(key=lambda x:int(x[:-4]))#倒着数第四位'.'为分界线,按照‘.’左边的数字从小到大排序

        此时乱序就变成了顺序:filenames=['11.jpg' , '22.jpg' , '30.jpg'],即filenames[1]='22.jpg';当然可根据自己文件名的特征去决定int(x[:?])中?的值,从哪里去分割排序。

  • 相关阅读:
    拼图
    事件处理和手势
    分栏控制器2
    分栏控制器
    数据保存
    常用小控件
    导航
    人人界面按钮,页面跳转,传值
    TextField
    image
  • 原文地址:https://www.cnblogs.com/andy-0212/p/11045778.html
Copyright © 2011-2022 走看看