更多的时间!时间是一个向量空间,它本来意味着什么。

mo-times的Python项目详细描述


Date

用于时间操作的简化日期和时间类。这个库是为个人和商业应用而设计的,假设每个太阳日有24*60*60秒被认为是准确的See GMT vs UTC below

假设

  • 所有时间都是GMT格式的-时区数学有待在人工终结点解决:计算机应该只处理一种类型的时间;没有洞,没有重叠,并且上下文最少。
  • single time type-日期、日期时间和时间之间没有区别;time维度中的所有度量值都由一个名为Date的类型处理。这对于将时间视为向量空间很重要。
  • 标准范围比较-所有时间范围比较都已标准化为min <= value < max最小值包含(^ {CD4}}),最大值是唯一的(^ {< CD5> })。

Date属性

Date()构造函数

Date()方法将转换unix时间戳、毫秒时间戳、各种字符串格式和简单的时间公式,以创建gmt时间

now()静态方法

以毫秒分辨率返回Date实例(以GMT为单位)。

eod()静态方法

返回一天的结束:最小的Date,它大于今天的所有时间点把它想象成明天与now().ceiling(DAY)相同

today()静态方法

今天的开始。与now().floor(DAY)

相同

范围(最小、最大、间隔)静态法

返回以min开头的Dates的显式列表,每个interval比上一个多,但现在包括max用于定义时间域中的分区

floor(duration=None)方法

此方法通常用于在给定的分辨率(即duration)下执行日期比较四舍五入到最近的整个持续时间。duration假设为DAY(如果未提供)。

format(format="%Y-%m-%d %H:%M:%S")方法

就像strftime

milli属性

自epoch起的毫秒数

unix属性

从epoch开始的秒数

add(duration)方法

添加一个duration到获取新的Date实例的时间未修改self

addDay()方法

方便方法self.add(DAY)

Duration

表示两个Dates之间的差异。有两种刻度:

  • DAY刻度-包括秒、分、小时、天和周
  • YEAR比例尺-包括月、季度、年和世纪

Duration()构造函数

按名称、公式、按timespan或(很少)毫秒数创建新的Duration

floor(interval=None)方法

四舍五入到最接近的interval大小

seconds属性

返回此持续时间内的总秒数(包括部分秒数)(按YEAR比例给出的估计值)

total_seconds()方法

seconds属性相同

round(interval, decimal=0)方法

返回给定的interval位数,舍入到给定的decimal位数

format(interval, decimal=0)方法

使用给定的intervaldecimal舍入返回表示self的字符串

时间向量空间

DateDuration对象是一维向量空间中的点和向量因此,允许使用+-运算符。还支持与(>>=<=<)的比较。

GMT与UTC的比较

太阳日是他最受欢迎的计时单位这个图书馆选择GMT(UT1)作为基准时钟,因为它在一个太阳日中的秒数是一致的。UTC的闰秒不一致,使得时间计算变得困难,甚至迫使我们做出迂腐的结论,比如说有些分钟没有60秒幸运的是Python对UTC(datetime.utcnow())的实现是错误的,并且实现了格林尼治时间:这是我们使用的。

误差分析

假设我们每6个月需要一个大方的闰秒(过去10年只有4闰秒),那么GMT在181天内(12月到6月,15638400秒)与UTC的偏差高达1秒,这是一个错误率error = 1/15,638,400 = 0.000006395%。如果我们想把误差称为“噪声”,我们有70db的信噪比。所有能够容忍此级别错误的应用程序都应使用GMT作为其时间基础。

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

推荐PyPI第三方库


热门话题
java Maven无法识别安装在Ubuntu外壳上的$java_HOME jdk   java如何防止可运行程序在其中一个抛出异常时执行   java Listview在按下项时不触发   如何在WindowsPhone8中使用JavaRESTWebService?   java在spring引导下使用多个dispatcher servlet/web上下文   java为什么在删除容器的绝对大小时不绘制GEF子项?   java在hibernate实体中保留DB约束是好的   JavaSpring选择最高优先级bean   ArrayList<Class>java字符串[]   有向加权边图的Java邻接表实现   字母数字字符串的java Tesseract配置:混合2、Z、6和G   如果输入为空,则带有EditText的java警报对话框将关闭   jsp上的java Struts 2动作响应   java获取IndexOutOfBundException Android   scala AWSJAVASDK:解压缩大小必须小于262144000字节