关于python的time

import time

'''
monotonic:
   # 特点: 不跟随系统时间,不受系统时间影响
   用于测量一个尝试加运行的进程的耗时,因为系统时间时间有改变也能保证这个时钟不会逆转
'''
print(time.monotonic())
print(time.monotonic_ns())

'''
per_counter:
    允许访问有最高可用分辨率的时钟,这使得短时间测量更为准确。
'''
print(time.perf_counter())
print(time.perf_counter_ns())

'''
process_time:
    返回处理器时间和系统时间组合结果
'''
print(time.process_time())
print(time.process_time_ns())


'''
thread_time:
   返回线程的CPU时间
'''
print(time.thread_time())
print(time.thread_time_ns())

'''
time:
    返回从“纪元”开始以来的秒数,Unix系统从1970年1月1日O0:00开始计算。
'''
print(time.time())
print(time.time_ns())

# 获取当前时间
print(f"获取当前时间time.time():", time.time())
print(f"获取当前时间time.ctime():", time.ctime())

# 时间的计算
# time.ctime(secs)
# secs参数 表示秒数
latter = time.time() + 86400  # 当前时间加一天
print(f'一天后时间:', time.ctime(latter))

# 时间结构体数据struct_time对象
# time.strptime(string, format)
# string 参数时间日期字符串, format 是时间日期的对应格式
now = time.ctime()  # 获取当前时间
struct_time = time.strptime(now)  # 默认的时间字符串(time.ctime()返回的结果),不传 format 使用默认的 时间格式。
# 可以单独访问 年、 月、日、时、分、秒。。。
print("当前年:", struct_time.tm_year)
print("当前月:", struct_time.tm_mon)
print("当前日(年月日中的日):", struct_time.tm_mday)
print("当前小时:", struct_time.tm_hour)
print("当前分钟:", struct_time.tm_min)
print("当前秒:", struct_time.tm_sec)
print("当前星期:", struct_time.tm_wday)
print("几年过了地几天,包括今天", struct_time.tm_yday)
# 如果想直接获取结构体时间
local_struct_time = time.localtime()  # 本地时间
UTC_struct_time = time.gmtime()  # UTC (a.k.a.GMT). 时间

# 结构体时间其实是一种 namedtuple, 有tuple的特性,也有对象的特性
# 对象特性:可以对应的key获取value,tuple特性,是下标获取 value:
# ## 需要注意的是,time.mktime()函数接受9位的元组数据,少一位都会报错。
# ## 元组数据的意义分别为年,月,日,时,分,秒,星期几,今年第几天,是否为夏令时。
# ## 当倒数2,3位数与前面日期冲突时,time.mktime()函数会自动修正。

# eg:
print(local_struct_time.tm_year)  # 对象特性, 获取当前的年
print(local_struct_time[0])  # tuple 特性,也是获取年
# 可以直接转为 tuple
struct_time_to_tuple = tuple(UTC_struct_time)
print(UTC_struct_time)
print(struct_time_to_tuple)

# 使用 tuple 创建时间
# time.mktime(time_tuple)
# time_tuple 用年月日时分秒。。。组成的tuple
time_tuple = (2022, 11, 14, 6, 13, 6, 0, 318, 0)
tuple_to_time = time.mktime(time_tuple)  # 返回 second
print(tuple_to_time)


# 字符串表示时间
# time.strftime(format, struct_time)  # 将 struct_time 转换为字符串表示时间
# format表示日间的格式, string表示时间字符串
struct_time = time.localtime()
str_time = time.strftime("%Y-%m-%d %H:%M:%S", struct_time)
print(str_time)

格式化标识符

符号含义
%y两位数的年份表示(00-99)
%Y四位数的年份表示(0000-9999)
%m月份(01-12)
%d月内中的一天(0-31)
%H24小时制的小时数(0-23)
%I12小时制的小时数
%M分钟数(00-59)
%S秒(00-59)
%a本地简化星期名称
%A本地完成星期名称
%b本地简化月份名称
%B本地完成的月份名称
%c本地相应的日期表示和时间表示
%j年内的一天(000-366)
%p本地的A.M.或者P.M.的等价符号
%U一年中的星期数(00-53),周日为星期的开始
%w星期(0-6), 周日为星期的开始
%W一年中星期数(00-53),周一为星期的开始
%x本地相应的日期表示
%Z当前时区的名称
%%%号
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值