Python---time库

目录

时间获取

时间格式化

程序计时


time库包含三类函数:

时间获取:time()        ctime()        gmtime()

时间格式化:strtime()        strptime()        

程序计时:sleep()        perf_counter()

下面逐一介绍:

时间获取
函数描述
time()  获取当前时间戳(从世界标准时间的1970年1月1日00:00:00开始到当前这一时刻为止的总秒数)即计算机内部时间值,浮点数
  >>>time.time()
1516939877
ctime()  获取当前时间并以易读方式表示,返回字符串
 >>>time.ctime()
 'Fri Jan 26 12:11:16 2023'
gmtime([secs])  获取当前时间,结构化,表示为计算机可处理的时间格式,
  >>>time.gmtime()
 time.struct_time(tm_year=2023, tm_mon=1,   
 tm_mday=26, tm_hour=4, tm_min=11, tm_sec=16,  
 tm_wday=4, tm_yday=26, tm_isdst=0)
localtime([secs])功能同上,localtime获取当地的时间,而gmtime获取世界统一时间

其中struct_time元组中元素的含义分别为

元素含义取值
tm_year4位数字,如2023
tm_mon1~12
tm_mday1~31
tm_hour0~23
tm_min0~59
tm_sec0~616061是闰秒)
tm_wday一周的第几日0~60为周一)
tm_yday一年的第几日1~366366为儒略历)
tm_isdst夏令时1:夏令时
0:非夏令时
-1:不确定
时间格式化

strftime(tpl,ts)

tpl是格式化模板字符串,用来定义输出效果

ts是计算机内部时间类型变量

>>>t = time.gmtime()
 >>>time.strftime("%Y-%m-%d %H:%M:%S",t)
 '2023-01-26 12:55:20'

strptime(str,tpl)

str是字符串形式的时间值
tpl是格式化模板字符串,用来定义输入效果

>>>timeStr = ‘2023-01-26 12:55:20'
>>>time.strptime(timeStr, "%Y-%m-%d %H:%M:%S")

#输出结果
 time.struct_time(tm_year=2023, tm_mon=1,   
 tm_mday=26, tm_hour=12, tm_min=55, tm_sec=20,  
 tm_wday=3, tm_yday=26, tm_isdst=-1)

现在总结一下格式化控制符

格式化字符串日期/时间说明值范围和实例
%Y年份  0000~9999,例如:1900
%m月份  01~12,例如:10
%B月份名称  January~December,例如:April
%b月份名称缩写  Jan~Dec,例如:Apr
%d日期  01~31,例如:25
%A星期  Monday~Sunday,例如:Wednesday
%a星期缩写  Mon~Sun,例如:Wed
%H小时(24h制)  00~23,例如:12
%I小时(12h制)  01~12,例如:7
%p上/下午  AM, PM,例如:PM
%M分钟  00~59,例如:26
%S  00~59,例如:26

程序计时

程序计时指的是测量起止动作所经历时间的过程

测量时间:perf_counter()

产生时间:sleep()

perf_counter()

#返回一个CPU级别的精确时间计数值,单位为秒由于这个计数值起点不确定,连续调用差值才有意义

 >>>start = time.perf_counter()
 318.66599499718114
 >>>end = time.perf_counter() 
 341.3905185375658
 >>>end - start
 22.724523540384666

 sleep(s)

s是休眠时间,单位为秒,可以是浮点数

>>>def wait():
        time.sleep(3.3)
>>>wait()   #程序将等待3.3秒后再退出

 举例:文本进度条

import time
scale = 10
print("------执行开始------")
for i in range(scale+1):
    a = '*' * i
    b = '.' * (scale - i)
    c = (i/scale)*100
    print("{:^3.0f}%[{}->{}]".format(c,a,b))
    time.sleep(0.1)
print("------执行结束------")

结果:

如果想实现单行刷新,只需要加入"\r",即打印后光标退回到之前的位置\r

    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')

import time
scale = 50
print("执行开始".center(scale//2, "-"))
start = time.perf_counter()
for i in range(scale+1):
    a = '*' * i
    b = '.' * (scale - i)
    c = (i/scale)*100
    dur = time.perf_counter() - start
    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')
    time.sleep(0.1)
print("\n"+"执行结束".center(scale//2,'-'))

 结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/228304.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【送书活动四期】被GitHub 要求强制开启 2FA 双重身份验证,我该怎么办?

记得是因为fork了OpenZeppelin/openzeppelin-contracts的项目,之后就被GitHub 要求强制开启 2FA 双重身份验证了,一拖再拖,再过几天帐户操作将受到限制了,只能去搞一下了 目录 2FA是什么为什么要开启 2FA 验证GitHub 欲在整个平台…

Html5响应式全开源网站建站源码系统 附带完整的搭建教程

Html5响应式全开源网站建站源码系统是基于Html5、CSS3和JavaScript等技术开发的全开源网站建站系统。它旨在为初学者和小型企业提供一套快速、简便的网站建设解决方案。该系统采用响应式设计,可以自适应不同设备的屏幕大小,提高用户体验。同时&#xff0…

柏林噪声C++

柏林噪声 随机噪声 如上图所示随机噪声没有任何规律可言,我们希望生成有一些意义的局部连续的随机图案 一维柏林噪声 假设希望生成一段局部连续的随机曲线,可以采用插值的方式:在固定点随机分配y值(一般是整数点)&a…

LeetCode力扣每日一题(Java):20、有效的括号

一、题目 二、解题思路 1、我的思路 我看到题目之后&#xff0c;想着这可能是力扣里唯一一道我能秒杀的题目了 于是一波操作猛如虎写出了如下代码 public boolean isValid(String s) {char[] c s.toCharArray();for(int i0;i<c.length;i){switch (c[i]){case (:if(c[i]…

Kotlin(十五) 高阶函数详解

高阶函数的定义 高阶函数和Lambda的关系是密不可分的。在之前的文章中&#xff0c;我们熟悉了Lambda编程的基础知识&#xff0c;并且掌握了一些与集合相关的函数式API的用法&#xff0c;如map、filter函数等。另外&#xff0c;我们也了解了Kotlin的标准函数&#xff0c;如run、…

Mybatis XML改查操作(结合上文)

"改"操作 先在UserInfoXMLMapper.xml 中 : <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><map…

2023金旗奖榜单隆重揭晓

2023年12月1日&#xff0c;2023品牌管理者年会暨第14届金旗奖品牌大赏圆满结束&#xff0c;为期两天的年会干货满满&#xff0c;四大专场八大主题演讲、两场圆桌论坛&#xff0c;汇集各领域大咖&#xff0c;巅峰交流品牌韧性增长之道&#xff0c;吸引来自海外内500多家企业品牌…

剪切板管理 Paste中文 for Mac

Paste是一个方便的剪贴板管理工具&#xff0c;它可以帮助你更好地组织、查找和管理剪贴板中的内容。它提供了历史记录、搜索、组织、格式处理和云同步等功能&#xff0c;使你能够更高效地使用剪贴板&#xff0c;并节省时间和精力。无论是在个人使用还是团队协作中&#xff0c;P…

学习git后,真正在项目中如何使用?

文章目录 前言下载和安装Git克隆远程仓库PyCharm链接本地Git创建分支修改项目工程并提交到本地仓库推送到远程仓库小结 前言 网上学习git的教程&#xff0c;甚至还有很多可视化很好的git教程&#xff0c;入门git也不是什么难事。但我发现&#xff0c;当我真的要从网上克隆一个…

图像的均方差和信噪比计算

图像的均方差和信噪比计算 一、均方差1、公式2、代码 二、信噪比1、公式2、代码 图像的均方差和信噪比公式及代码&#xff0c;代码基于opencv和C实现。 一、均方差 均方误差&#xff0c;英文简称&#xff1a;MSE&#xff0c;英文全称&#xff1a;“Mean Square Error”。 衡量…

相控阵天线(十五):进阶稀疏阵列天线(边缘稀疏阵列、稀疏子阵天线、旋转稀疏子阵天线)

目录 简介圆形边缘稀疏阵列矩形边缘稀疏阵列稀疏子阵天线旋转稀疏子阵天线 简介 前面的博客已经介绍过常见的平面阵有一些基本类型&#xff0c;本篇博客介绍一些实际工程中可能出现的阵列&#xff0c;包括椭圆阵列、子阵通过矩形拼接形成的矩形大阵列和圆形大阵列、子阵通过三…

CG-70A 双轴高精度倾角传感器准确测量水平角度的变化状况

产品概述 一款双轴高精度数字型&#xff08;RS485&#xff09;倾角传感器&#xff0c;其产品分辨率为0.0001&#xff0c;采用铝合金外壳&#xff0c;防护等级为IP67&#xff0c;可用来系统与准确地测量水平角度的变化状况。 功能特点 ★ 抗外界电磁干扰能力强、能承受大冲击…

Leetcode—198.打家劫舍【中等】

2023每日刷题&#xff08;五十二&#xff09; Leetcode—198.打家劫舍 算法思想 具体思路 首先&#xff0c;我们从上面的题目描述中抽象出题意。 ● 从一个非负整数数组中找到一个子序列&#xff0c;并且该子序列的和最大 ● 子序列中每个数的位置不能够相邻。举例来讲&…

智能优化算法应用:基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.金枪鱼群算法4.实验参数设定5.算法结果6.参考…

Rust的eBFP框架Aya(一) - Linux内核网络基础

前言 在我的Rust入门及实战系列文章中已经说明&#xff0c; Rust是一门内存安全的高性能编程语言&#xff0c;从它的这些优秀特性来看&#xff0c;就是一门专为系统开发而诞生的语言。至于很多使用Rust来进行web开发的行为&#xff0c;不能说它们不好&#xff0c;只能说是杀鸡…

企业集团采购系统(供应商、询价、招投标)-源码

一、业务需求 企业招标询价供应商管理系统是一种专业的采购管理系统&#xff0c;旨在帮助企业实现供应商关系的管理和采购成本的控制。该系统涵盖了企业采购管理的各个方面&#xff0c;包括采购预算、供应商管理、产品管理、采购计划、询价、竞价、招标、采购订单、采购合同执…

python数据分析总结(pyecharts)

目录 安装依赖 Demo pyecharts.options 图表绘制 WordCloud.shape 安装依赖 pip install pyecharts Demo ### 对象式 from pyecharts.charts import Bar bar Bar() bar.add_xaxis([1,2,3,4,5]) bar.add_yaxis("数据1",[40,56,65,23,56]) bar.add_yaxis("数…

远程服务器QEMU+Ubuntu+GRUB+VNC最佳实践

远程服务器QEMUUbuntuGRUBVNC最佳实践 1. 准备2. QEMU启动安装Ubuntu2.1 服务器端2.2 本地端 3. 从服务器终端控制虚拟机GRUB与虚拟机终端 这段时间参与大量内核切换测试工作&#xff0c;实体机需要硬件自检太过笨重&#xff0c;因此主要通过QEMU验证正确性。有一个很大的问题是…

docker的资源控制

对容器使用宿主机的资源进行限制。例如&#xff1a;cpu、内容、磁盘I/O docker使用Linux自带的功能Cgroup功能进行控制 Cgroup是什么&#xff1f; Cgroup&#xff1a;Control grouos是Linux内核系统提供的一种可以限制、记录、隔离进程组所使用的物理资源机制。 docker借助…

Intel® Enclave Access Control and Data Structures(二)

文章目录 前言一、Overview of Enclave Execution Environment二、Terminology三、Access-control Requirements四、Segment-based Access Control五、Page-based Access Control5.1 Access-control for Accesses that Originate from non-SGX Instructions5.2 Memory Accesses…