からos.listdir()
私はフォルダから選んだ何百ものファイルのリストを作成しました。すべてのファイル名は、次のパターンがあります。Python: "part"のうちの1つだけで文字列をソート
obj1__5
obj1__10
obj1__15
...
...
obj1__250
...
obj2__5
obj2__10
...
obj2__250
... and so on up to obj99
フォルダ内のファイルは、このスキーム以下命じられた、しかしos.listdir()
を使用しているとき、私はこのように順序付けされたリストを持って:
obj1__0.png
obj1__10.png
obj1__100.png
obj1__105.png
...
obj1__145.png
obj1__15.png
obj1__150.png
obj1__155.png
...
obj1__190.png
obj1__195.png
obj1__20.png
obj1__200.png
obj1__205.png
... and so on
方法はありますフォルダに表示されているのと同じ順番でファイルをピックアップしますか?あるいは、適切な順序でそれらを戻すために私が使うことができる任意のソート関数?おかげ
これはファイルをソートするのに特有のことではなく、文字列のリストだけです。ソートするものを定義する 'key'関数を書くことができます。 – jonrsharpe
あなたは自然な並べ替えと呼ばれることをしたい、あなたはそれについて[ここ]を読むことができます(https://stackoverflow.com/questions/4836710/does-python-have-a-built-in-function-for-string-ナチュラルソート) –
@jonrsharpeあなたは正しいです。私は、質問のタイトルを変更しました。なぜなら、それは潜在的にすべての文字列に適用される可能性があるからです。 –