python-3.x - ValueError:发现时间倒置
问题描述
我正在使用 datetimerange 来检查日期是否在两个日期之间。不幸的是,在没有退出程序或显示任何内容的情况下,我不知何故收到了一条奇怪的错误消息。只有当我 ctrl+c 时,我才会收到此错误:
ValueError:发现时间倒置:2021-09-02 14:48:34.796000+00:00 > 2021-08-25 12:27:20.603000+00:00
所以这是导致它的行:
try: inRange = time_in_range(start_date, end_date, timestamp) except: inRange = time_in_range(end_date, start_date, timestamp)
我从elasticsearch日志中得到了日期,之前没有得到这个,所以我不知道它是什么原因造成的。我什至不明白这个错误信息。
你知道问题是什么吗?互联网上几乎没有任何信息,所以我想我遇到了一个错误或者很明显。
谢谢
解决方案
我想问题是范围不正确。我可以轻松触发此消息 - 请参见下面的代码:
#!/usr/bin/python3.9
from datetimerange import DateTimeRange
d1="2015-03-22T10:00:00+0900";
d2="2015-03-22T10:10:00+0900";
print(DateTimeRange(d1,d2).validate_time_inversion())
print(DateTimeRange(d2,d1).validate_time_inversion())
输出:
None
Traceback (most recent call last):
File "/home/username/py/time_inversion_ex.py", line 6, in <module>
print(DateTimeRange(d2,d1).validate_time_inversion())
File "/usr/local/lib/python3.9/dist-packages/datetimerange/__init__.py", line 272, in validate_time_inversion
raise ValueError(
ValueError: time inversion found: 2015-03-22 10:10:00+09:00 > 2015-03-22 10:00:00+09:00
推荐阅读
- javascript - TinyMCE 通过 API 转换 HTML:如何停止
- node.js - 如何从feathersjs钩子中分离逻辑
- java - 创建一个 spring mvc 应用程序,在身份验证后将每个请求重定向回以前的 URL
- django - 没有查询参数的 django build_absolute_uri
- python - 在 Jupyter Notebook 中的任何位置重命名变量
- android - Picasso 未将图像加载到 Target
- python - 在while循环中无限循环
- javascript - 如何通过对象键推送和替换数组中的值
- c++ - CMake 无法链接 boost 库
- asp.net - 如何找到asp.net核心版本