Python时间整数问题



我正在尝试计算'then'和'now'之间的时差。我已经改变了格式,以便我可以更好地进行比较(我不需要秒或纳秒等)

'then'时间来自于一个加密,它正在被解析以进行比较,这恐怕是导致错误的原因。

def decrypt_and_compare_date():
        from Crypto.Cipher import XOR
        from datetime import timedelta, datetime, date
        import base64
        import config
        cipher = XOR.new(cryptopassword)
        encrypted = cipher.decrypt(base64.b64decode(config.event_date))
        then = date(encrypted)
        now = date(2015,10,5)
        days = (now - then).days
        print days + " days ago."

给出如下错误:

TypeError:需要一个整数

如果我在这行使用*:

    then = date(encrypted)

然后解析这个错误。

TypeError: function接受最多3个参数(给定8个)

日期(加密)应为2015,7,1

有人知道这个魔术吗?

尝试使用datetime.strptime()将字符串解析为日期。

,

>>> s = "2015,7,1"
>>> from datetime import datetime
>>> d = datetime.strptime(s,'%Y,%m,%d').date()
>>> d
datetime.date(2015, 7, 1)

这是基于假设字符串中的第二个数字是月,第三个数字是日期,如果相反,则在'%Y,%m,%d'中交换%m%d

最新更新