python 2.4中的datetime命令行参数

时间:2010-03-11 21:16:13

标签: python datetime

我想在命令行上将datetime值传递给我的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)

1 个答案:

答案 0 :(得分:16)

通过time模块,在2.4中已经有strptime

>>> 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)