Python 内置的 time 模块可以让 Python 程序读取系统时钟的当前时间。
1 time.time() 函数
Unix 纪元指的是 1970 年 1 月 1 日 0 点,即协调世界时(UTC)。 time.time()函数会返回自Unix 纪元那一刻以来的秒数,是一个浮点值,这个数字称为 UNIX 纪元时间戳。 (由于英文(CUT,Coordinated Universal Time)和法文(TUC)的缩写不同,作为妥协,简称 UTC。)
UNIX 纪元时间戳可以用于剖析代码性能,也就是测量一段代码的运行时长。在代码块开始时调用 time.time() ,并在代码结束时再次调用,就可以用第二个时间戳减去第一个,得到这部分代码块的运行时长。
import time logging.basicConfig(level=logging.DEBUG, format='%(levelname)s - %(message)s') def factorial(num): ''' 计算阶乘 :param num: :return: ''' factorial = 1 for i in range(1, num + 1): factorial = factorial * i return factorial start_time = time.time() result = factorial(100000) end_time = time.time() logging.info('计算结果有 %s 位.' % (len(str(result)))) logging.info('计算过程共耗费 %s 秒.' % (end_time - start_time))
运行结果:
INFO - 计算结果有 456574 位. INFO - 计算过程共耗费 3.1611809730529785 秒.
2 time.sleep() 函数
如果需要让程序暂停一下,可以调用 time.sleep()函数,该函数接收希望程序暂停的秒数作为入参。
for i in range(3): logging.info('111') time.sleep(0.5) logging.info('222') time.sleep(0.5)
运行结果:
INFO - 111 INFO - 222 INFO - 111 INFO - 222 INFO - 111 INFO - 222
time.sleep() 函数会阻塞,直到传递给 time.sleep() 的秒数流逝掉才会继续执行。