首页 > 其他分享 >time模块

time模块

时间:2023-12-19 19:12:21浏览次数:35  
标签:12 17 tm 时间 模块 time print

time模块

  • 表示时间的三种方式
    • 时间戳
    • 元组(struct_time)
    • 格式化的时间字符串:
      • 格式化的时间字符串(Format String): ‘1999-12-06’

(1)导入模块

  • import time

(2)时间戳(time)

(1)生成时间戳

  • 生成时间戳 , 时间戳是浮点数类型
# #时间戳
# # time=time.time()
# # print(time)
  • 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
  • 时间戳是使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。
  • 时间戳系统用来产生和管理时间戳,对签名对象进行数字签名产生时间戳,以证明原始文件在签名时间之前已经存在。

(2)时间戳转换为时间元组(UTC时间)

  • 将时间戳转换为UTC时间,与英国伦敦当地时间一致
# #时间戳转化为时间元组(UTC时间)
# time1=time.time()
# print(time.gmtime(time1))
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=11, tm_min=9, tm_sec=53, tm_wday=6, tm_yday=351, tm_isdst=0)
#
# time_time = time.time()
# print(time.gmtime(time_time))
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=11, tm_min=5, tm_sec=58, tm_wday=6, tm_yday=351, tm_isdst=0)

(3)时间戳转换为时间元组(当地时间)

  • 当地时间。例如我们现在在北京执行这个方法:与UTC时间相差8小时,UTC时间+8小时 = 北京时间
# #时间戳转换为时间元组(当地时间)
# time1=time.time()
# print(time.localtime(time1))
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=19, tm_min=11, tm_sec=18, tm_wday=6, tm_yday=351, tm_isdst=0)

(3)时间字符串(strftime)

# #时间字符串
# print(f"{time.strftime('%x %X')}")#12/17/23 19:13:46
# time1=time.strftime("%x %X")
# print(time1)#12/17/23 19:13:55
  • Python中时间日期格式化符号
符号 含义
%y 两位数的年份表示 (00-99)
%Y 四位数的年份表示 (000-9999)
%m 月份 (01-12)
%d 月内中的一天 (0-31)
%H 24小时制小时数 (0-23)
%I 12小时制小时数 (01-12)
%M 分钟数 (00=59)
%S (00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天 (001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数 (00-53)星期天为星期的开始
%w 星期 (0-6),星期天为星期的开始
%W 一年中的星期数 (00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身

(4)时间元组(struct_time)

  • localtime将一个时间戳转换为当前时区的struct_time
# #时间元组(struct_time)
# time=time.localtime()
# print(time)
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=19, tm_min=17, tm_sec=5, tm_wday=6, tm_yday=351, tm_isdst=0)
  • struct_time 元组共有9个元素共九个元素:
    • (年,月,日,时,分,秒,一年中第几周,一年中第几天等)
索引(Index) 属性(Attribute) 值(Values)
0 (年) 比如2023
1 tm_mon(月) 1 - 12
2 tm_mday(日) 1 - 31
3 tm_hour(时) 0 - 23
4 tm_min(分) 0 - 59
5 tm_sec(秒) 0 - 60
6 tm_wday(weekday) 0 - 6(0表示周一)
7 tm_yday(一年中的第几天) 1 - 366
8 tm_isdst(是否是夏令时) 默认为0

![image-20231217194306763](D:\old boy\typora\笔记\我的python28笔记\20\image-20231217194306763.png)

(5)结构化时间

(1)time.mktime(时间戳--》元组时间戳)

# #time.mktime(时间戳--》元组时间戳)
# time1=time.time()
# print(time1)#1702812197.9736006
# time1_tuple=time.localtime(time1)
# print(time1_tuple)
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=19, tm_min=23, tm_sec=17, tm_wday=6, tm_yday=351, tm_isdst=0)
# time1_str=time.mktime(time1_tuple)
# print(time1_str)
# #1702812197.0

(2)time.strftime(结构化时间--》时间字符串)

  • 结构化时间参数若不传,则显示当前时间
# #time.strftime(结构胡时间--》时间字符串)
# #格式化当前时间
# time_str=time.strftime("%y-%m-%d %x")
# print(time_str)#23-12-17 12/17/23
#
# print(time.localtime(time.time()))
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=19, tm_min=26, tm_sec=26, tm_wday=6, tm_yday=351, tm_isdst=0)

# #格式化当前时间元组
# time_local=time.strftime("%Y-%m-%d",time.localtime(time.time()))
# print(time_local)
# #2023-12-17

(3)time.strptime(时间字符串--》时间元组)

# #time.strptime(时间字符串--》时间元组)
# time_str=time.strptime("2023-12-17","%Y-%m-%d")
# print(time_str)
# #time.struct_time(tm_year=2023, tm_mon=12, tm_mday=17, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=351, tm_isdst=-1)
#
# time_local = time.strptime("11/24/2023", "%m/%d/%Y")
# print(time_local)
# #time.struct_time(tm_year=2023, tm_mon=11, tm_mday=24, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=328, tm_isdst=-1)

(4)time.asctime(结构胡时间--》%a%b%d%H:%M:%S%Y串)

  • time.asctime(结构化时间)
    • 如果不传参数,直接返回当前时间的格式化串
  • time.ctime(时间戳)
    • 时间戳 --> %a %b %d %H:%M:%S %Y串
    • 如果不传参数,直接返回当前时间的格式化串
# #time.asctime(结构化时间--》%a%b%d%H:%M:%S%Y串)
# time_str = time.asctime(time.localtime(time.time()))
# print(time_str)
# #Sun Dec 17 19:31:41 2023
#
# time_local = time.asctime()
# print(time_local)
# #Sun Dec 17 19:32:04 2023

![image-20231217194353924](D:\old boy\typora\笔记\我的python28笔记\20\image-20231217194353924.png)

(6)小结

  • 时间戳是计算机能够识别的时间;
  • 时间字符串是人能够看懂的时间;
  • 元组则是用来操作时间的

标签:12,17,tm,时间,模块,time,print
From: https://www.cnblogs.com/suyihang/p/17914482.html

相关文章

  • python中导入模块/包的几种方式
    一、模块的导入方式模块就是.py类型的Python文件导入时不需要.py后缀,直接导入文件名即可1.利用import直接导入:语法:importmodule_name使用方式:module_name.class_name或者module.func_name2.利用import导入模块并设置一个别名语法:importmodule_nameasXXX使用方式:XXX.cl......
  • 理解ROS2的坐标转换模块tf2
    0概述tf2是ROS的核心库之一,它记录了所有坐标系的转换关系,包括动态坐标转换tf,和静态坐标转换tf_static;首先,介绍tf2库(即,geometry2)编译/调试环境的搭建步骤;然后,介绍部分的类图结构,和调用时序;1搭建ROS2的编译环境参考:http://docs.ros.org/en/iron/Installation/Ubuntu-Install-D......
  • Numpy模块
    Numpy模块的核心就是基于数组的运算,相比于列表和其他数据结构,数组的运算效率是最高的。常用的数学函数np.pi常数pnp.e常数enp.fabs(arr)  例如:np.fabs(-3) 计算各元素的浮点型绝对值np.ceil(arr) 例如:np.ceil(3.2)对元素向上取整np.floor(arr) 类似ceil 向下取整对......
  • DC电源模块的安装和使用步骤是什么?
    DC电源模块的安装和使用步骤是什么?安装和使用DC电源模块的步骤如下:确定模块的电源需求:查阅模块的规格和说明书,确定所需的输入电压范围和输出电流能力。配置电源线:根据电源模块的输入要求,选择合适的电源线。确保电源线具备足够的额定电流和正确的接线方式。连接电源线:将电源线的一......
  • BOSHIDA DC电源模块的安装和使用步骤是什么?
    BOSHIDADC电源模块的安装和使用步骤是什么?安装和使用DC电源模块的步骤如下: 1.确定模块的电源需求:查阅模块的规格和说明书,确定所需的输入电压范围和输出电流能力。2.配置电源线:根据电源模块的输入要求,选择合适的电源线。确保电源线具备足够的额定电流和正确的接线方式。3......
  • 高德地图api报错 Get geolocation timeout.Get ipLocation failed.
    使用了https报错Getgeolocationtimeout.GetipLocationfailed. 报错是定位超时,由于JSAPI使用的是浏览器提供的定位服务,所以定位的准确度和成功率都会对浏览器有很大的依赖。由于Chrome在国内没有提供服务,因此使用Chrome定位服务的浏览器,比如:Chrome、火狐、安卓原生WebVie......
  • Git:submodule子模块操作
    一、子模块添加gitsubmoduleadd<url><path>gitsubmoduleaddhttps://github.com/../.gitthemes/MeiFixIt二、子模块更新gitsubmoduleupdate--remote--merge三、下载子模块同父模块一起下载子模块gitclone--recurse-submodules<repository-url>父模块......
  • 【GD32307E-START】06 ST7735 SPI-LCD显示模块移植
    软硬件平台GD32F307E-STARTBoard开发板GCCMakefile1.8寸TFTLCD分辨率128*160驱动ICST7735S接口定义序号引脚标号说明1GND接地2VCC5V/3.3V电源输入3SCKSPI总线时钟信号4SDASPI总线写数据信号5RESET液晶屏复位信号,低电平复位6DC......
  • Python实现模块热加载
    为什么需要热加载在某些情况,你可能不希望关闭Python进程并重新打开,或者你无法重新启动Python,这时候就需要实现实时修改代码实时生效,而不用重新启动Python在我的需求下,这个功能非常重要,我将Python注入到了其他进程,并作为一个线程运行。如果我想关闭Python,要么杀死Python相关的线程......
  • ABP模块的测试项目从默认的Microsoft SQL Server替换成MySQL
    1、替换项目引用2、重新生成解决方案3、删除Migrations4、模块的引用替换成:AbpEntityFrameworkCoreMySQLModule5、命名空间替换成:Volo.Abp.EntityFrameworkCore.MySQL;6、ConfigureServices中的修改替换成:UseMySQL();7、DbContext中的修改替换成:UseMySql(configuration.GetConnect......