跳转到主要内容

基本日历功能:便利性是否尚未涵盖。

项目描述

bda.calendar.base 包含处理程序员日常任务的功能,这些任务没有被Python的datetime或Zope的DateTime(或只部分覆盖)。

这些功能的大部分都是时区感知的。处理时区也非常容易。可以在特定的应用程序中提供一个TimezoneFactory,以便知道用户的时区(例如,在Web应用程序的情况下)。

计算器

CWof(date)

日期的日历周数。

firstDayOfCW(year, cw, tzinfo=None)

编号日历周的第一天

daysOfWeek(year, cw, tzinfo=None)

生成给定日历周的7个日期时间

numberOfDaysInYear(dt)

计算给定日期时间的年份中的天数

numberOfDaysInMonth(dt)

计算给定日期时间的月份中的天数

daysOfMonth

生成给定月份的所有日期作为日期时间

hoursOfDay(year, month, day, tzinfo=None)

生成一天中的所有小时作为日期时间

isSameDay(first, second)

检测两个日期是否为同一天。bool。

转换器

dt2DT(dt)

将Python的datetime转换为Zope的DateTime。具有时区感知功能。

DT2dt(DT)

将Zope的DateTime转换为Python的datetime。不具有时区感知,结果为UTC。

dt2UTCString(dt)

从datetime的时间元组构建一个以“-”分隔的字符串作为UTC。

dtFromUTCString(utcstr)

从时间元组的UTC字符串构建datetime。

dt2epochday(dt)

自epoch以来的天数。在此处时区会出现问题,我们需要将所有时间归一化为GMT,以便即使在不同的时区也能识别相同的日期:例如,2008-05-01T00:00:00+02:00 (CEST)

检查器

所有函数都使用timezoneAdjuster(见下文)。因此传递一个上下文

dtYear(dt, context=None)

datetime的年份。

dtMonth(dt, context=None)

datetime的月份。

dtDay(dt, context=None)

datetime的日期。

dtHour(dt, context=None)

datetime的小时。

dtMinute(dt, context=None)

datetime的分钟。

dtWeekday(dt, context=None)

datetime的星期。

pyDt

检测dt是否是datetime对象的实例。

重复

简单的重复功能。对于更复杂的重复功能,请参阅dateutils.rrule。

recueDays(start, until, recuemode, offset)

生成重复日的列表。

时区

处理时区总是很痛苦。有了这些常见功能,痛苦就会减少。使用ZCA注册一个通用的TimezoneFactory,使用计算机的系统时区。它由timezoneAdjuster使用。如果您注册了一个更具体的TimezoneFactory,按照其简单的接口 - 它只是一个可调用对象 - 您可以实现用户配置的多时区感知应用程序。这全部基于pytz,因为pytz非常有效。

ServerTimezoneFactory(context)

服务器时区(当前计算机)。您永远不需要直接使用它。

timezoneAdjuster(context, dt)

具有给定时区的新的datetime。给定的datetime不能是无知的!

tzawarenow()

使用UTC时区的时间感知now datetime。如果您需要当前时区,请调整它。

贡献者

许可

版权(c)2008-2022,BlueDynamics Alliance,奥地利。版权所有。

重新分发和使用源代码和二进制形式,无论是否修改,只要满足以下条件

  • 源代码的重新分发必须保留上述版权声明、本条款列表和以下免责声明。

  • 二进制形式的重新分发必须在文档和/或其他提供的材料中复制上述版权声明、本条款列表和以下免责声明。

  • 未经BlueDynamics Alliance事先书面许可,不得使用BlueDynamics Alliance的名称或其贡献者的名称来认可或推广由此软件派生出的产品。

本软件由BlueDynamics Alliance提供“按原样”以及任何明示或暗示的保证,包括但不限于适销性和针对特定目的的适用性的暗示保证。在任何情况下,BlueDynamics Alliance均不对任何直接、间接、偶然、特殊、示范性或后果性的损害(包括但不限于替代商品或服务的采购;使用、数据或利润的损失;或业务中断)承担责任,无论此类损害是否因使用本软件而引起,即使已告知此类损害的可能性。

变更

1.2.5 (2022-12-05)

  • 再次尝试使用zest.releaser发布wheel。[rnix]

1.2.4 (2022-12-05)

  • 发布wheel。[rnix]

1.2.3

  • 删除多余的导入。[rnix,2020-08-12]

1.2.2

  • 适用于金字塔和Zope的条件ZCML。[rnix, 2011-11-16]

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

bda.calendar.base-1.2.5.tar.gz (9.8 kB 查看哈希值)

上传时间 源代码

构建分发

bda.calendar.base-1.2.5-py3-none-any.whl (9.3 kB 查看哈希值)

上传时间 Python 3

由以下机构支持