栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python glob.glob根据字符串中的数字排序

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python glob.glob根据字符串中的数字排序

在使用glob.glob获取文件名列表后,需要对列表重新排序,但是不规范的命名会让排序变得困难,这里提供一个简单的方法实现文件的重命名和排序。
在使用sorted对list进行排序时,我们期望得到按照‘1,2,3,4,5…,10’这样的顺序排列,但是可能会得到‘1,10,100,2,3,4…‘,因此在后续分析中就会存在一些问题。
例如,glob.glob获得了list(未全部列出)

在用sorted排序后得到

显然我想把10,11,12三个文件排在后面,因此

def str_transform(files):
    for i in range(len(files)):
        try:
            string = int(files[i][11:13])
        except:
            files[i] = files[i][:11]+'0'+files[i][11:]

    return sorted(files)

这样就结束了上述问题

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/331111.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号