【发布时间】:2015-01-08 10:27:24
【问题描述】:
我有许多文件夹,其中包含多个版本化文件。以下是示例文件:
Cat_Setup_v01.mb
Cat_Setup_v18.mb
版本号有两个字符的填充。这样,我可以轻松地使用以下方法对文件进行排序:
listFiles = glob.glob( myPath + "*.m*") # Retrieve files in my folder
listFiles.sort()
不幸的是,我有一些文件有一百多个版本。因此,我的排序方法被 v1XX 破坏了,因为它们在 v09 和 v10 之间排序。
有没有一种有效的方法可以以正确的方式对文件进行排序,而无需全部重命名并更改它们的填充?
sorted(versionNumber, key=int) 结合一些拆分字符串操作可能是一个有趣的线索,但我担心它会太麻烦。
我不太了解 Python,因为它似乎是一种有趣的语言,有很多可能性,我很确定有一种更有效的方法。
干杯
【问题讨论】:
-
我知道这不是您要问的,但我会编写一个 Python 脚本,自动将所有文件名从 v01 更改为 v0001 .
-
我的下一个任务是更改使用 Python 脚本制作的版本填充。但是,我在这里有大约 400 个包含版本文件的文件夹,其中一些文件目前被其他人使用。所以,我会让他们保持原样并使用@dragon2fly 回答。
标签: python file sorting version