今天是边复习边创作博客的第三天,我今年大二,我们专业开的有这门课程,因为喜欢所以更加认真学习,本以为没人看呢,看了后台浏览量让我更加认真创作,这篇博客花了2个半小时的时间,结合自己所学,所思,所想写作,目的是为了方便喜欢Python的小白学习,也是一种自我鞭策吧!
python语言使用内置time库和datetime库来处理日期时间
相关术语的解释
- UTC time Coordinated Universal Time,世界协调时,又称 格林尼治天文时间、世界标准时间。与UTC time对应的是各个时区的local time,东N区的时间比UTC时间早N个小时,因此UTC time + N小时 即为东N区的本地时间;而西N区时间比UTC时间晚N个小时,即 UTC time - N小时 即为西N区的本地时间; 中国在东8区,因此比UTC时间早8小时,可以以UTC+8进行表示。
- epoch time 表示时间开始的起点;它是一个特定的时间,不同平台上这个时间点的值不太相同,对于Unix而言,epoch time为 1970-01-01 00:00:00 UTC。
- timestamp(时间戳) 也称为Unix时间 或 POSIX时间;它是一种时间表示方式,表示从格林尼治时间1970年1月1日0时0分0秒开始到现在所经过的毫秒数,其值为float类型。 但是有些编程语言的相关方法返回的是秒数(Python就是这样),这个需要看方法的文档说明。需要说明的是时间戳是个差值,其值与时区无关。
调用库的三种方式:
以time库为例,调用其它库类似
from time import * (*代表time包含所有的时间处理函数,用到某个也可单定义,调用函数时直接使用,比如:clock()) import time (调用函数方式,比如:time.clock()) import time as t (自定义库的名称,调用时方便,比如:t.clock())
time库的主要的三类函数:
以上面第三种库调用方式举例
1.时间获取:t.time();t.ctime();t.gmtime() #每种获取时间不一样,根据需求使用
2.程序计时:t.clock();t.perf_counter() #使用方式一样
3.时间格式化:t.strftime(format,t);t.strptime(string,format)
#format表示要定义的格式,t表示获取的时间,string表示字符串类型时间
字符串格式化:%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)
4.程序休眠:t.sleep()
#使用举例 import time as t t0=t.gmtime() print(t0) t1="2020-12-23 19:23:20" t2 = t.strptime(t1,"%Y-%m-%d %H:%M:%S") t3 = t.strftime("%y/%m/%d %H:%M:%S") print(t2) print(t3)
打印结果:
C:\Users\86185\PycharmProjects\untitled\venv\Scripts\python.exe C:/Users/86185/PycharmProjects/untitled/Python复习/hk.py
time.struct_time(tm_year=2020, tm_mon=12, tm_mday=23, tm_hour=12, tm_min=22, tm_sec=39, tm_wday=2, tm_yday=358, tm_isdst=0)
time.struct_time(tm_year=2020, tm_mon=12, tm_mday=23, tm_hour=19, tm_min=23, tm_sec=20, tm_wday=2, tm_yday=358, tm_isdst=-1)
20/12/23 20:22:39Process finished with exit code 0
time模块主要用于时间访问和转换,这个模块提供了各种与时间相关的函数。
datetime库主要的四类函数:
datetime库是基于time库进行了封装;以import datetime as dt 为datetime库调用方式
1.date:表示的是日期对象 #dt.date
2.time;表示的是时间对象 #dt.time ;一般不用date和time函数,datetime函数包含其功能
3.datetime:表示的是日期时间对象#dt.datetime.now()表示获取当前时间;dt.strftime(format) # 按照 format 进行格式化输出
4.timedelta:主要用于定义计算时间跨度 #t=dt.timedelat(hours=10)表示定义时间跨度是10小时
用分隔符'''分类展示如下:
import datetime as dt now = dt.datetime.now() # 获取当前datetime print(now) 输出结果:2019-05-07 16:28:07.198690 ''' d = dt.date(2020, 12, 23) print(d) print('year:', d.year) print('month:', d.month) print('day:', d.day) 输出结果: 2020-12-23 year: 2020 month: 12 day: 23 ''' ''' date1=dt.date(2020,12,23) timedel=dt.timedelta(days=4)#表示时间跨度为4天 print('四天后的日期是:', date1+timedel) 输出结果:四天后的日期是:2020-12-27 '''
最后配上一段小程序:文本进度条打印程序分析
import time scale = 100 #这个可以随意设置,看需求 print("执行开始".center(scale//2,'-'))# .center(a,'b')函数是居中符,这条程序是将“执行开始”居中占字符为scale//2(可看需求自定义),b为填充符 starttime = time.clock() #time库内置函数,第一次使用是开始计时 for i in range(scale+1): a = '*' * i #将'*'字符随i的增加而增加 b = '.' * (scale - i) #将'.'字符随‘*'增加而减少,两个字符总数是scale的初始值数量 c = (i/scale) * 100 #求百分比 t = time.clock()-starttime #计算时间,第二次调用time.clock函数表示计时结束 print("\r{:^3.0f}%[{}->{}]{:.2}s".format(c,a,b,t),end="")#字符格式化,看需求,自己玩就是咋好看咋格式化 time.sleep(0.05) #time.sleep()函数表示让程序休眠,里面参数是休眠时间根据需求随意定义 print("\n"+"执行结束".center(scale//2,'-'))#同上;"\n表示换行打印";"+"连接符,具有连接功能
关于datetime模块的datetime类会在下面做详细讲解,这里简单说下time.struct_time。
time.struct_time包含如下属性:
下标/索引
属性名称
描述
0
tm_year
年份,如 2017
1
tm_mon
月份,取值范围为[1, 12]
2
tm_mday
一个月中的第几天,取值范围为[1-31]
3
tm_hour
小时, 取值范围为[0-23]
4
tm_min
分钟,取值范围为[0, 59]
5
tm_sec
秒,取值范围为[0, 61]
6
tm_wday
一个星期中的第几天,取值范围为[0-6],0表示星期一
7
tm_yday
一年中的第几天,取值范围为[1, 366]
8
tm_isdst
是否为夏令时,可取值为:0 , 1 或 -1
属性值的获取方式有两种:
- 可以把它当做一种特殊的有序不可变序列通过 下标/索引 获取各个元素的值,如t[0]
- 也可以通过 .属性名 的方式来获取各个元素的值,如t.tm_year。
需要说明的是struct_time实例的各个属性都是只读的,不可修改。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]