学会了Python这个库,以后日期和时间问题都不用怕了 | 您所在的位置:网站首页 › python学生类 › 学会了Python这个库,以后日期和时间问题都不用怕了 |
日期和时间问题一直是枚举题的一大难点,因为它可以考察选手的编程能力。而日期和时间问题也是比较头疼的,这里提供一个解决日期和时间问题的一大利器——Python 的datetime库 (一)datetime库的介绍Python的datetime库一般用于处理年、月、日、时、分、秒的统计、加减计算等需求。它集成了date类和time类。拥有大量的有效的成员方法和成员变量来帮助我们解决头疼的日期和时间的枚举问题。 datetime库总共有5个类,分别是: datetime.date:表示日期的类datetime.datetime:表示日期时间的类datetime.time:表示时间的类datetime.timedelta:表示时间间隔datetime.tzinfo:时区的相关信息根据目前的做题经验,解决日期和时间问题主要使用date类和datetime类,以及timedelta类。 导入datetime库import datetime dt = datetime.date(2019,8,26) #date类 dt=datetime.datetime(2021, 7, 5, 17, 58, 21, 359135) #datetime类 delta=datetime.timedelta(days=1)#timedelta类(二)日期的枚举——date类date类用来描述日期 三个成员变量 date.year(年)、date.month(月)、date.day(日) #年的范围为1-9999,特别注意常用的成员方法: data.isoweekday():返回weekday,如果是星期一,返回1;如果是星期2,返回2,以此类推;(三)时间的枚举——datetime类(也可以用于日期的枚举但推荐使用date)datatime既可以用于时间的处理也可以用于日期的枚举。 8个成员变量 datetime.year(年) datetime.month(月) datetime.day(日) datetime.hour(小时) datetime.minute(分钟) datetime.second(秒) datetime.microsecond(微秒) datetime.tzinfo(四)日期的加减运算——timedelta类8个成员变量 timedelta.days(日) timedelta.seconds(秒) timdelta.microseconds(微秒) timedelta.milliseconds(毫秒) timedelta.minutes(分钟) timedelta.hours(小时) timedelta.weeks(周)(五)例题的应用个人喜欢在使用datetime的使用使用死循环,当日期枚举结束后break掉 例题1:时间显示 蓝桥杯OJ1452——时间问题:时间加减 ——日期问题:日期枚举 ——日期问题:日期枚举 ——日期问题:日期枚举 ——日期问题:日期枚举 ——日期问题:日期枚举 怎么样,感觉到Python这个语言在日期问题上的巨大优势了吗 (七)日期模板但是为了以防万一,有些时候datetime不一定能用,还是需要日期模板 #日期数组 days=[0,31,28,31,30,31,30,31,31,30,31,30,31] #判断闰年 def is_leap(year): if year%4==0 and year%100!=0 or year %400==0: return True return False #判断日期是否合法 def check_date(date): year=date//10000 #取前四个数字 month=date/100%100 #取五六个数字 day=date%100 #取最后两个数字 if month12: return False if day==0 or month!=2 and day>days[month]: return False if month==2: if is_leap(year): days[2]+=1 if day>days[2]: return False return True def get_days(year,month): if month==2: if is_leap(year) and days[2]==28: days[2]+=1 return days[2]+=1 else: return days[month] |
CopyRight 2018-2019 实验室设备网 版权所有 |