将未来日期转换为人性化的英语格式

HumanFuture的Python项目详细描述


人类未来

python实用程序,以人性化的方式编写未来日期。

该模块的动机是需要在一场友谊赛中代表未来的事件, 但不是tweet调度工具的模糊方式, [反tweet](http://anticitweet.com)。友好的语言而不牺牲 精确是人类未来与众不同的原因。

该模块目前采用12小时英语硬编码,精度为1 分钟。

安装

这个包在pypi上,所以假设您安装了安装工具,它只是 做一件事

pip install humanfuture

示例

>>> import humanfuture as future
>>> from datetime import datetime
>>> ref = datetime(2012, 8, 6, 9, 0)
>>> future.humanize(datetime(2012, 8, 6, 9, 1), ref)
'about a minute'
>>> future.humanize(datetime(2012, 8, 6, 9, 5), ref)
'five minutes'
>>> future.humanize(datetime(2012, 8, 6, 10, 30), ref)
'one hour and 30 minutes'
>>> future.humanize(datetime(2012, 8, 6, 12, 0), ref)
'noon'
>>> future.humanize(datetime(2012, 8, 7, 12, 0), ref)
'tomorrow at noon'
>>> future.humanize(datetime(2012, 8, 7, 18, 0), ref)
'tomorrow at 6 pm'
>>> future.humanize(datetime(2012, 8, 9, 14, 30), ref)
'Thursday at 2:30 pm'
>>> future.humanize(datetime(2012, 8, 13, 9, 15), ref)
'next Monday at 9:15 am'
>>> future.humanize(datetime(2012, 10, 13, 12, 0), ref)
'October 13 at noon'
>>> future.humanize(datetime(2013, 4, 13, 23, 11), ref)
'April 13, 2013 at 11:11 pm'

为了更完整的-虽然,也更丑陋-参考什么这个模块 输出,请参见测试中的test_humanfuture.py

人性化您的未来

humanfuture中的人性化功能是您想要的功能。就进来一个 DateTime对象在将来的某个时候,它应该会弹出一个 英文字符串。

如果你需要从现在以外的某个时间拿出相对的未来,你可以 传入一个引用日期时间作为第二个参数。

处理你的过去

此模块可能引发两个异常,一个 humanfuture.negativedeltaerror,或humanfuture.unformattableerror。这个 第二个不应该真的发生。如果你来了,请告诉我 穿过它。但你要小心的第一个。

这个模块的作用域被限制在将来的时间内,所以它抛出 如果你给它一个未来的过去。为了避免这种情况, 或者在提交之前检查你的未来,或者如果你不确定,把 在try/catch块中转换并在那里处理它。

学分

虽然这是一个全新的模块,但一些灵感来自 可爱的[人性化](https://github.com/jmoiron/humanize)模块。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓唯一约束失败,SQLite,Java   java preparedStatement。getString()方法不适用于嵌套sql查询   java如何使用意图将图像(jpg)从一个活动传递到另一个活动?   java无法使用resources文件夹中的文件进行jUnit测试   java Basic多线程程序   JavaSpring自定义转换为Bean或不转换为Bean   amazon web services如何使用AWS CLI 2将更新的JAR上载到现有的Java Elastic Beanstalk实例?   java 安卓:spinner提示符未在API>23中显示   Java表格输出到文件   仅当时间已过而不使用java中的计时器时才执行方法   java有没有一种更健壮的方法来实现依赖于通配符的字符串值的程序流?   未使用BaseAdapter实现在ListView上调用java OnItemLongClickListener   javascript Java Play2是否允许Json RPC调用?   java如何通过编程从doc和docx文件中删除用户身份信息?   JAVAlang.SecurityException:UID 10243在Android 10中没有粗略/精细位置权限