time模块-时间的查看与时间格式的转换
time模块提供了各种与时间相关的函数。对于相关的功能,请参阅datetime
模块和calendar
模块。
time模块并不是所有的函数都可以在任意平台上使用。不同的平台上time模块中函数有不同语义,可参考官方文档。
对于专业术语与惯例显示如下:
时间元年是指某一年的1月1日0时,对于Unix/Linux,计算机元年是1970年。要找出这个计算机元年,查看
time.gmtime(0)
。time模块中的函数不处理计算机元年以前的时间,也不处理超过计算机处理的将来时间。未来的分界点是由C库决定的,对于32位的Unix/Linux系统,分界点通常在2038年。详解:Y2K问题和2038问题
2000年(Y2K)问题:Python依赖于的C库,但它通常没有2000年的问题,因为所有的日期和时间都在内部表示为从计算机元年到现在经历的秒数。而time模块中某函数通常需要4位数的年。对于向后兼容性,如果变量
accept2dyear!=0
,则支持两位数的年;除非环境变量PYT“HONY2K被设置为非空字符串,在这种情况下,它被初始化为0。因此,您可以将python-ony2k设置为环境中的一个非空字符串,从而在全年输入中需要4位数的时间。当两位数的年被接受时,它们根据POSIX或x/open标准进行转换:69-99的值被映射到1969-1999,而0-68的值被映射到2000-2068。100-1899的价值观总是不合法的。
this variable is initialized to 1 unless the environment variable PYTHONY2K is set to a non-empty string, in which case it is initialized to 0. Thus, you can set PYTHONY2K to a non-empty string in the environment to require 4-digit years for all year input. When 2-digit years are accepted, they are converted according to the POSIX or X/Open standard: values 69-99 are mapped to 1969-1999, and values 0–68 are mapped to 2000–2068. Values 100–1899 are always illegal.