python中datetime和time的区别,我学了一周整理的

大家在学python的时候,可能会遇到这么个问题,datetime和time到底有什么区别,我什么时候使用呢?

区别:

datetime 和 time 都是Python中处理时间的模块,但是各自的区别就在于下面几点:

  • time 模块比 datetime 模块更加底层,它可以获取距离 1970 年 01 月 01 日以来经过的秒数,并且提供了一些底层的时间函数,如 sleep()、gmtime()、localtime()、strftime()、strptime() 等。

  • datetime 模块是基于 time 模块的,它对 time 模块进行了封装,提供了更加高级的时间操作方法。datetime 模块提供了 date、time、datetime、timedelta 四个类,封装了日期和时间的一些常用操作,它们可以被认为是 time 模块的加强版。

  • time 模块是使用 C 语言编写的,速度非常快,在对程序执行时间要求较高的场景下,可以优先选择它来处理时间。

  • datetime 模块则更适合处理时间的格式化和操作,提供了更多用于日期时间运算的方法和类,适用于需要对时间进行加减、格式化、计算等操作的场景。

总之,time 模块更适合处理时间的底层操作,而 datetime 模块则更适合应用场景较高的日期时间操作。根据实际需求选择不同的模块来处理时间是非常重要的。

各自常用的方法:

time 模块:

  • time():获取当前时间戳。
  • sleep():程序进入睡眠状态,单位为秒。
  • gmtime() 和 localtime():将时间戳转换为结构化时间。
  • mktime():将结构化时间转换为时间戳。
  • strftime():将时间格式化为自定义字符串。
  • strptime():将自定义字符串转换为时间格式。
  • process_time():获取当前进程的CPU时间。
  • perf_counter() 和 monotonic():获取平均计时器和单调计时器的值。

datetime 模块:

  • datetime():获取当前日期和时间。
  • now():获取当前日期和时间,等同于 datetime() 方法。
  • date():获取当前日期。
  • time():获取当前时间。
  • timedelta():时间差,可用于日期时间的加减。
  • strftime():将日期时间格式化为字符串。
  • strptime():将字符串转换为日期时间格式。

 

你可能感兴趣的:(python入门到入眠,python)