问题标签 [python-datetime]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
15 回答
514457 浏览

python - 如何在 Python 中创建时区感知日期时间对象?

我需要做什么

我有一个不知道时区的 datetime 对象,我需要在其中添加一个时区,以便能够将它与其他支持时区的 datetime 对象进行比较。我不想将我的整个应用程序转换为不知道这个遗留案例的时区。

我试过的

首先,证明问题:

首先,我尝试了 astimezone:

失败并不奇怪,因为它实际上是在尝试进行转换。替换似乎是一个更好的选择(根据How do I get a value of datetime.today() in Python that is "timezone aware"?):

但正如您所看到的,replace 似乎设置了 tzinfo,但没有让对象知道。我正准备回退到在解析输入字符串之前修改输入字符串以拥有一个时区(如果这很重要,我正在使用 dateutil 进行解析),但这看起来非常笨拙。

另外,我在 Python 2.6 和 Python 2.7 中都尝试过,结果相同。

语境

我正在为一些数据文件编写解析器。我需要支持一种旧格式,其中日期字符串没有时区指示符。我已经修复了数据源,但我仍然需要支持旧数据格式。由于各种商业 BS 原因,不能选择一次性转换遗留数据。虽然总的来说,我不喜欢硬编码默认时区的想法,但在这种情况下,它似乎是最好的选择。我有理由相信所有有问题的遗留数据都是 UTC,所以我准备接受在这种情况下违约的风险。

0 投票
1 回答
1477 浏览

python - 检测重叠的日期重复规则

我在一个看起来像谷歌日历的应用程序中工作,但有一个主要区别:事件不应该与其他事件有交集。这意味着没有两个事件可以共享公共时间,即使以分钟为单位也是如此。这对于只存储会议的日历特别有用,因为不可能同时参加两个会议。

就像 Google 日历一样,可以使用重复规则(例如,每个星期五和星期日的上午 10 点到下午 13 点)创建事件。因此,我想仅使用rrules(python-dateutil 模块的)来检测重叠事件,而无需创建 N 个 datetime 对象并检查每个对象的交集。

是否可以仅使用规则来检测重叠日期?在另一个库中是否已经实现了类似的东西?

0 投票
3 回答
1533 浏览

python - 如何获取从现在到月底的日期范围?

我使用日期时间,我有:

我需要更换???从一天到月底。

怎么做?

0 投票
1 回答
524 浏览

python - 猴子修补“日期时间”会产生奇怪的结果

我正在尝试使我的库之一与 Python 2.6 兼容。它使用了datetime.timedelta.total_seconds在 2.7 中添加的方法,所以为了使它与 2.6 一起工作,我想像timedelta这样修改它:

这在某些情况下确实有效,例如,如果我创建一个timedelta变量,它确实有这个方法。但是,如果timedelta通过减去两个datetime.datetime值来生成新对象,则结果对象中缺少该方法。

出了什么问题,我该如何解决?

0 投票
6 回答
9342 浏览

python - 结束一天(日期时间)的最优雅方式是什么?

我目前正在编写一些报告代码,允许用户有选择地指定日期范围。它的工作方式(简化)是:

  • 用户(可选)指定年份。
  • 用户(可选)指定月份。
  • 用户(可选)指定一天。

这是一个代码片段,以及描述我想要做什么的注释

我正在尝试找到编写上面代码的最优雅的方法——我一直在尝试找到一种使用 timedelta 的方法,但似乎无法弄清楚。任何意见,将不胜感激。

0 投票
5 回答
1441 浏览

python - 时区和本地化

我目前一直以 UTC 存储时间,以便在我开始将多个站点和服务器联机时使事情变得更容易。

date在我的模板中将对象转换为字符串以及datetime接受用户输入时,问题就出现了。UTC 时间下午 6:00 对 PST 中的人来说意义不大。同样,要求用户在 UTC 中输入时间是在要求灾难。

如何以一种聪明、不易出错的方式正确翻译这些值?有没有一种方法可以从 HTTP 请求中确定用户所在的时区?我真的需要一种方法来尽可能少地确定用户的时区。

0 投票
2 回答
461 浏览

javascript - Python vs JavaScript - 来自序数时间的UTC时间

在 Python 中:

在 JavaScript 中:

如果我正在寻找的是 UTC\GMT,那么两者中哪一个是正确的?
我怎样才能修复另一个?

0 投票
4 回答
146971 浏览

python - 如何将整数转换为日期对象python?

我在 python 中创建了一个模块,我在其中接收整数格式的日期,如20120213,表示 2012 年 2 月 13 日。现在,我想将此整数格式的日期转换为 python 日期对象。

另外,如果有什么方法可以在这种整数格式的日期中减去/添加天数以接收相同格式的日期值?就像减去 30 天20120213并收到答案一样20120114

0 投票
1 回答
501 浏览

django - python django 从 datetime 对象中减去 timedelta 对象?

一个 python/django 初学者的问题:

我有一个 datetime 对象 (drive_date)、一个 time 对象 (start_time) 和一个 timedelta 对象 (when_to_notify)。

我首先这样做:

然后我想从 d 中减去“when_to_notify”timedelta 对象以获得通知日期和时间。但是,django 不喜欢这样。它告诉我: TypeError: unsupported operand type(s) for -: 'datetime.time' and 'datetime.timedelta'

如何从 datetime 对象中减去 timedelta 对象中的时间?

0 投票
8 回答
113562 浏览

python - 如何使用 Python 的 datetime 模块确定当前时间是否在指定范围内?

10:30 AM查看当前时间是否介于 say和之间的最佳方法是什么4:30 PM

我可以想到以下内容,不确定如何正确:

请让我知道这是否是正确的方法,可以写更好的东西吗?