模块系列time

模块系列time_第1张图片
1554214576060.png

时间方法操作

# time
# 返回当前时间戳
res = time.time()
print(res)

# mktime
# 通过时间元祖获得时间戳
ttup = (2018, 12, 2, 12, 2, 2, 0, 0, 0)
res = time.mktime(ttup)
print(res)

# localtime
# 时间戳=>时间元祖
res = time.localtime()
print(res)  

# ctime
# 时间戳=>时间字符串
strvar = time.ctime()
print(strvar)

# asctime
# 时间元祖=>时间字符串
strvar = time.asctime(ttup)
print(strvar)

# strftime
# 时间元祖==>格式化字符串
time_tuple = (2019,4,10,11,28,0,0,0,0)
fs = "%Y-%m-%d %H:%M:%S 是古代文学家孟子的生日"
format_time = time.strftime(fs, time_tuple)
print(format_time)

# strptime
# 时间字符串==>时间元组
strvar = "某年1929,某月-2月某日-6号 某时12点某分20分:某秒30秒 我的心里在想你"
strvar2 = "某年%Y,某月-%m月某日-%d号 某时%H点某分%M分:某秒%S秒 我的心里在想你"
tup = time.strptime(strvar,strvar2)
print(tup, type(tup))

asctime()不会自动识别星期几, 需要手动修改

解决方法:

    # 先把时间元祖转成时间戳

    res = time.mktime(time_tuple)

    # 再把时间戳转成时间字符串

    time_str = time.ctime(res)

时间元祖的格式

格式1(自定义):
    (年,月,日,时,分,秒,周几,一年中的第几天,是否是夏令时时间)
    
格式2(系统提供):
    (tm_year = 年,tm_month = 月,tm_day = 日,tm _hour = 时, tm_min = 分, tm _sec = 秒, tm _wday = 周几, tm _yday = 一年中的第几天,tm_isdst = 是否是夏令时时间)

格式化时间字符串:

格式    含义        
    %a    本地(locale)简化星期名称
    %A    本地完整星期名称
    %b    本地简化月份名称
    %B    本地完整月份名称
    %c    本地相应的日期和时间表示
    %d    一个月中的第几天(01 - 31)
    %H    一天中的第几个小时(24 小时制,00 - 23)
    %I    一天中的第几个小时(12 小时制,01 - 12)
    %j    一年中的第几天(001 - 366)
    %m    月份(01 - 12)
    %M    分钟数(00 - 59)
    %p    本地 am 或者 pm 的相应符    
    %S    秒(01 - 61)   
    %U    一年中的星期数(00 - 53 星期天是一个星期的开始)第一个星期天之前的所有天数都放在第 0 周    
    %w    一个星期中的第几天(0 - 6,0 是星期天)   
    %W    和 %U 基本相同,不同的是 %W 以星期一为一个星期的开始
    %X    本地相应时间
    %y    去掉世纪的年份(00 - 99)
    %Y    完整的年份
    %z    用 +HHMM 或 -HHMM 表示距离格林威治的时区偏移(H 代表十进制的小时数,M 代表十进制的分钟数)
    %%    %号本身

你可能感兴趣的:(模块系列time)