Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python3.x验证日期和时间格式(带时区)_Python_Python 3.x - Fatal编程技术网

Python3.x验证日期和时间格式(带时区)

Python3.x验证日期和时间格式(带时区),python,python-3.x,Python,Python 3.x,我想用一些RFC定义的格式验证日期。问题是时区可能不同 24 Dec 1991 23:59:23 UTC 24 Dec 1991 23:59:23 EST 24 Dec 1991 23:59:23 CST 我扩展了这段代码,它工作得很好 只要时区是UTC(我的本地) 我想我可以改变我当地的时区 但是我需要提取字符串的最后一部分并对其进行测试,但感觉很混乱。那么我宁愿选择一个完整的正则表达式解决方案 我正在研究,不知道如何使用它来解决这个问题。我真的不明白这些模糊是关于什么的 使用dateu

我想用一些RFC定义的格式验证日期。问题是时区可能不同

24 Dec 1991 23:59:23 UTC
24 Dec 1991 23:59:23 EST
24 Dec 1991 23:59:23 CST
我扩展了这段代码,它工作得很好

只要时区是UTC(我的本地)

我想我可以改变我当地的时区

但是我需要提取字符串的最后一部分并对其进行测试,但感觉很混乱。那么我宁愿选择一个完整的正则表达式解决方案


我正在研究,不知道如何使用它来解决这个问题。

我真的不明白这些模糊是关于什么的

使用dateutil

该解决方案的局限性可在
(什么是“标准”时区缩写?

哇,好吧,我想这个问题很糟糕(-8分钟后2个)?但有人能解释一下原因吗?很明显我错过了一些明显的东西?不是一张反对票但是。。。我不会手工做这件事。日期很难做对(有很多边缘情况)。人们写的整本书都是关于正确处理日期的(为了让它更有趣,“正确”的用法各不相同)。使用图书馆可以节省你的时间、精力和头痛。有关Python在日期方面的缺陷的解释,请参见。我听说()很好,但我自己没有使用过,因为我倾向于使用django的内部日期库。可能您需要一个或多个模块来处理时区定义。我使用和的组合来解决类似的问题task@user3159253非常感谢。是的,我找到了pytz,但我已经安装了dateutil,所以我希望我可以使用它(它似乎还有一个时区库),问题是我不知道如何将它与datetime模块结合,或者它是否可行。@Basic谢谢!我想我的问题太笼统了,我不是要验证所有的格式,只是一些特定的RFC定义的格式(我希望我听起来仍然不像是应该被否决的人……)。我在谷歌上搜索过,但什么也找不到。我找到的答案就是我链接到的答案(还有其他一些答案也是如此)。我将查看箭头模块。
def validate_date(d):
    try:
        datetime.strptime(d, '%d %b %Y %H:%M:%S %Z')
        return True
    except ValueError:
        return False