1.基础准备
高考是指中国的普通高等教育招生全国统一考试,是中国学生升入大学的重要途径之一。高考通常在每年的6月6日开始举行,考试科目包括语文、数学、外语以及各个文理科目。考试成绩在决定学生是否能够进入大学及进入哪所大学方面起着重要的作用。
2.导入必备的模块
import datetime
3.代码实现
print(" 高考倒计时 " ) now = datetime.datetime.today() # 获取当前日期 print(" 今天是:", now.strftime("%Y-%m-%d %A ")) time1 = datetime.datetime(2024,6,7) # 2024年高考日期 time2 = datetime.datetime(2025,6,7) # 2025年高考日期 print("距离2024年高考还有" + str((time1-now).days) +"天") print("距离2025年高考还有" + str((time2-now).days) +"天")
(1)
.strftime("%Y-%m-%d %A")
是datetime
对象的一个方法,用于将日期格式化为特定的字符串。参数"%Y-%m-%d %A"
是一种格式化字符串,其中各个符号代表不同的日期和时间元素:
%Y
:代表四位数的年份(例如:2021)%m
:代表两位数的月份(01-12)%d
:代表两位数的日期(01-31)%A
:代表星期几的全名(Monday-Sunday)
因此,.strftime("%Y-%m-%d %A")
将把datetime
对象表示的日期格式化为如"2024-06-07 Monday"这样的字符串。在代码中,使用now.strftime("%Y-%m-%d %A")
将当前日期格式化为指定的字符串格式,并输出到控制台上。
(2).days
是datetime.timedelta
对象的一个属性,用于获取时间差的天数。在这个上下文中,time1-now
和time2-now
都是datetime.timedelta
对象,它们表示从当前日期到指定日期之间的时间差。通过.days
属性,我们可以获取这个时间差的天数。
例如,对于一个timedelta
对象 delta
,delta.days
将返回天数的整数值。在给定的代码中,(time1-now).days
和 (time2-now).days
将分别返回距离2024年高考和距离2025年高考还有多少天的整数值。这样我们可以轻松地获取并输出这两个天数。
4.代码封装优化
(1)使用函数封装代码:将计算高考倒计时的代码封装到一个函数中,便于复用和管理。
(2)动态获取当前年份:使用datetime.datetime.now().year
来动态获取当前的年份,而不是手动输入。
(3)使用列表和循环:如果需要计算多个不同年份的倒计时,可以将年份存储在一个列表中,并使用循环进行遍历和计算。
import datetime def get_countdown(year): now = datetime.datetime.today() exam_date = datetime.datetime(year, 6, 7) countdown = (exam_date - now).days return countdown def main(): current_year = datetime.datetime.now().year exam_years = [2024, 2025] # 高考年份列表 for year in exam_years: countdown = get_countdown(year) print(f"距离{year}年高考还有 {countdown} 天") if __name__ == "__main__": main()
结语:不要让高考的结果限制了你对未来的憧憬和追求。即使你没有达到自己期望的成绩,也不要气馁或放弃。生活中有许多其他的机会和途径可以追求你的梦想。成功不仅仅依赖于高考成绩,更取决于你的努力、态度和机遇的把握。
原文链接:https://blog.csdn.net/qq_69198819/article/details/131861848?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171949575216800197091535%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171949575216800197091535&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-22-131861848-null-null.nonecase&utm_term=2024%E9%AB%98%E8%80%83