параметр командной строки даты и времени в python 2.4

Я хочу передать значение даты и времени в свой сценарий Python на командной строке. Моя первая идея состояла в том, чтобы использовать optparse и передать значение в как строка, затем использовать datetime.strptime для преобразования его в дату и время. Это хорошо работает на моей машине (python 2.6), но я также должен запустить этот скрипт на машинах, которые выполняют python 2.4, который не имеет datetime.strptime.

Как я могу передать значение даты и времени сценарию в python 2.4?

Вот код, который я использую в 2,6:

parser = optparse.OptionParser()
parser.add_option("-m", "--max_timestamp", dest="max_timestamp",
                  help="only aggregate items older than MAX_TIMESTAMP", 
                  metavar="MAX_TIMESTAMP(YYYY-MM-DD HH24:MM)")
options,args = parser.parse_args()
if options.max_timestamp:
    # Try parsing the date argument
    try:
        max_timestamp = datetime.datetime.strptime(options.max_timestamp, "%Y-%m-%d %H:%M")
    except:
        print "Error parsing date input:",sys.exc_info()
        sys.exit(1)
9
задан Ike Walker 11 March 2010 в 21:16
поделиться

1 ответ

Воспользуйтесь модулем time , который уже имел strptime в версии 2.4:

>>> import time
>>> t = time.strptime("2010-02-02 7:31", "%Y-%m-%d %H:%M")
>>> t
(2010, 2, 2, 7, 31, 0, 1, 33, -1)
>>> import datetime
>>> datetime.datetime(*t[:6])
datetime.datetime(2010, 2, 2, 7, 31)
16
ответ дан 4 December 2019 в 13:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: