-1

29Jun2011,12Aug2013,31Jan2013,08Aug1985 のような名前のフォルダーがあります。Python スクリプトを使用して、時系列の逆順に整理する必要があります。そして、最新のものを変数に保存して出力する必要があります。

4

2 に答える 2

0

フォルダの名前を変更できる場合は、ISO-8601 の日付形式を使用してくださいYYYY-MM-DD。標準のASCII照合を使用してそれらをソートできます;)

それが不可能な場合は、次のように並べ替えることができます

import time

def sortkey(s):
    return time.strptime(s, '%d%b%Y')

names = sorted(unsorted_names, key=sortkey)

ただし、最新のものだけが必要な場合は、最大値のみが必要です。

def sortkey(s):
    return time.strptime(s, '%d%b%Y')

date, filename = max((sortkey(i), i) for i in unsorted_names)
print date, filename

これははるかに高速です。一般に、問題が「最大値を見つける」ことである場合は、並べ替えを使用したくありません。最大値のみが必要な場合は、max()関数を使用します。n 値が必要な場合は、heapq.nlargest

于 2013-08-13T09:57:12.250 に答える