(“arrow”fork)python的更好的日期和时间,带有间隔
arrow-fatisar的Python项目详细描述
什么?
arrow是一个python库,它为创建、操作、格式化和转换日期、时间和时间戳提供了一种合理的、人性化的方法。它实现并更新datetime类型,填补功能上的空白,并提供一个支持许多常见创建场景的智能模块api。简单地说,它可以帮助您以更少的导入和更少的代码处理日期和时间。
为什么?
python的标准库和其他一些低级模块具有近乎完整的日期、时间和时区功能,但从可用性的角度来看,它们并不很好地工作:
- 模块太多:datetime、time、calendar、dateutil、pytz等
- 类型太多:日期、时间、日期时间、tzinfo、timedelta、relativedelta等。
- 时区和时间戳转换冗长且令人不快
- 时区naievety是标准值
- 功能差距:ISO-8601解析、时间跨度、人性化
功能
- 完全实现,直接替换DateTime
- 支持Python2.6、2.7和3.3
- 默认情况下,时区感知&utc
- 为许多常见的输入方案提供超级简单的创建选项
- 更新。将方法替换为支持相对偏移,包括周
- 自动格式化和分析字符串,包括ISO-8601格式的字符串
- 时区转换
- 时间戳可用作属性
- 以从一年到微秒的时间范围生成时间跨度、范围、地板和天花板
- 人性化并支持不断增长的贡献区域设置列表
- 可扩展为您自己的箭头派生类型
快速启动
第一个:
$ pip install arrow
然后:
>>> importarrow>>> utc=arrow.utcnow()>>> utc<Arrow [2013-05-11T21:23:58.970460+00:00]> >>> utc=utc.replace(hours=-1)>>> utc<Arrow [2013-05-11T20:23:58.970460+00:00]> >>> local=utc.to('US/Pacific')>>> local<Arrow [2013-05-11T13:23:58.970460-07:00]> >>> arrow.get('2013-05-11T21:23:58.970460+00:00')<Arrow [2013-05-11T21:23:58.970460+00:00]> >>> local.timestamp1368303838 >>> local.format()'2013-05-11 13:23:58 -07:00' >>> local.format('YYYY-MM-DD HH:mm:ss ZZ')'2013-05-11 13:23:58 -07:00' >>> local.humanize()'an hour ago' >>> local.humanize(locale='ko_kr')'1시간 전'
贡献
我们欢迎您的贡献,特别是本地化方面的贡献。有关当前支持的内容,请参见locales.py。