【教学类-48-03】202402011“闰年”(每4年一次 2月有29日)世纪年必须整除400才是闰年)
2000-2099年之间的闰年有25次,
背景需求:
已经制作了对称年月的数字提取,和年月日相等的年份提取
【教学类-48-01】20240205对称的“年”和“月日”(如2030 0302)-CSDN博客文章浏览阅读84次。【教学类-48-01】20240205对称的“年”和“月日”(如2030 0302)https://blog.csdn.net/reasonsummer/article/details/136062477
https://blog.csdn.net/reasonsummer/article/details/136062477
【教学类-48-02】20240207“年”和“月”和“日”相等(如2012 1212)-CSDN博客文章浏览阅读834次,点赞25次,收藏22次。【教学类-48-02】20240207“年”和“月”和“日”相等(如2012 1212)
https://blog.csdn.net/reasonsummer/article/details/136064823?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22136064823%22%2C%22source%22%3A%22reasonsummer%22%7D
修改代码,提取所有闰年(有2月29日的年,就是闰年)——今年龙年2024年就有2月29日。
参考代码
python 获取指定范围所有日期_python获取一段时间的所有日期对象-CSDN博客文章浏览阅读680次。python 获取指定范围所有日期方法有很多,这不是唯一的答案。可以根据自己的需要进行修改,代码如下:import datetimedef gen_dates(b_date, days): day = datetime.timedelta(days=1) for i in range(days): yield b_date + day * idef get_date_list(start=None, end=None): if start is Non_python获取一段时间的所有日期对象https://blog.csdn.net/love_521_/article/details/113983984?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&utm_relevant_index=9
https://blog.csdn.net/love_521_/article/details/113983984?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&utm_relevant_index=9
重点说明:

代码展示
'''
2900-2100年之间提取闰年
作者:阿夏
日期:2024年2月11日
'''# https://blog.csdn.net/love_521_/article/details/113983984?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-4-113983984-blog-110731910.235%5Ev43%5Epc_blog_bottom_relevance_base6&utm_relevant_index=9
import datetimedef gen_dates(b_date, days):day = datetime.timedelta(days=1)for i in range(days):yield b_date + day * idef get_date_list(start=None, end=None):if start is None:start = datetime.datetime.strptime('20180202', '%Y%m%d')else:start = datetime.datetime.strptime(start, '%Y%m%d')if end is None:# end = datetime.datetime.now()end = datetime.datetime.strptime('20280202', '%Y%m%d')else:end = datetime.datetime.strptime(end, '%Y%m%d')data = []for d in gen_dates(start, (end -start).days):m = datetime.datetime.strftime(d, '%Y%m%d')data.append(m) # 如果你想添加的为日期类型 m改为 d即可print(data, data.__len__(), sep='\n')t=[]# 遍历for x in range(len(data)):b=data[x][0:2]# 提取“年”前2个数字 20240229的20y=data[x][2:4]# 提取“年”后2个数字 20240229的24m=data[x][4:6]# 提取“月”2个数字 20240229的02d=data[x][6:8]# 提取“日”2个数字 20240229的29if m=='02'and d=='29': # 如果2月有29天a=b+y# 合并年月日print('符合闰年的年份',a,'年')t.append(a)print('符合闰年的年份有',len(t),'次')print('符合闰年的年份列表',t)# 起始日期
get_date_list(start='10000101', end='99991231')
# get_date_list(start='20000101', end='20991231')
# 40541# 符合闰年的年份 2000 年
# 符合闰年的年份 2004 年
# 符合闰年的年份 2008 年
# 符合闰年的年份 2012 年
# 符合闰年的年份 2016 年
# 符合闰年的年份 2020 年
# 符合闰年的年份 2024 年
# 符合闰年的年份 2028 年
# 符合闰年的年份 2032 年
# 符合闰年的年份 2036 年
# 符合闰年的年份 2040 年
# 符合闰年的年份 2044 年
# 符合闰年的年份 2048 年
# 符合闰年的年份 2052 年
# 符合闰年的年份 2056 年
# 符合闰年的年份 2060 年
# 符合闰年的年份 2064 年
# 符合闰年的年份 2068 年
# 符合闰年的年份 2072 年
# 符合闰年的年份 2076 年
# 符合闰年的年份 2080 年
# 符合闰年的年份 2084 年
# 符合闰年的年份 2088 年
# 符合闰年的年份 2092 年
# 符合闰年的年份 2096 年
# 符合闰年的年份有 25 次
# 符合闰年的年份列表 ['2000', '2004', '2008', '2012', '2016', '2020', '2024', '2028', '2032', '2036', '2040', '2044', '2048', '2052', '2056', '2060', '2064', '2068', '2072', '2076', '2080', '2084', '2088', '2092', '2096']
结果:
符合闰年的年份 2000 年
符合闰年的年份 2004 年
符合闰年的年份 2008 年
符合闰年的年份 2012 年
符合闰年的年份 2016 年
符合闰年的年份 2020 年
符合闰年的年份 2024 年
符合闰年的年份 2028 年
符合闰年的年份 2032 年
符合闰年的年份 2036 年
符合闰年的年份 2040 年
符合闰年的年份 2044 年
符合闰年的年份 2048 年
符合闰年的年份 2052 年
符合闰年的年份 2056 年
符合闰年的年份 2060 年
符合闰年的年份 2064 年
符合闰年的年份 2068 年
符合闰年的年份 2072 年
符合闰年的年份 2076 年
符合闰年的年份 2080 年
符合闰年的年份 2084 年
符合闰年的年份 2088 年
符合闰年的年份 2092 年
符合闰年的年份 2096 年
符合闰年的年份有 25 次
根据以上数字判断:
1、100年里有25次闰年?
根据以上数字判断:从00开始反复加4年,直到96,(最大数字是99)一共25次。
00、04、08、12……92,96
那么公元1000年到公元9999年的“闰年”日期可能的数量
(9999-1000+1)*25/100=2250年(一百年里25次闰年)
2、并非所有的XX00年都是闰年
可是结果不是2250,而是2182,少了68年

查询网络才知道


也就是说:跨世纪的“XX00年”必须能被400整除才算闰年。下图显示1000 年/400=2.5、3000年/400=7.5不是闰年(红色表示缺失),但2000年/400=5可以整除,就是闰年(绿色)
因此我有写了一个年份代码,测试68次缺少的分别是那些“世纪年”
'''
2900-2100年之间提取闰年,世纪年XX00不是闰年
作者:阿夏
日期:2024年2月11日
'''
start=1000
end=9999# 遍历所有年份
t=[]
for y in range(start,end+1):t.append(str(y))
# print(t)oy=[]# 平年
ly=[]# 闰年
for x in t:if x[2:4]=='00': # # print(x)num=int(x)/400if num==int(num):num=int(num)ly.append(x)# print(num)# print('闰年')else:num=float(num)# print(num)# print('非闰年')oy.append(x)else:passprint('不符合闰年的世纪年(平年)有',len(oy),'次')
print('不符合闰年的世纪年(平年)列表',oy)print('符合闰年的世纪年(闰年)有',len(ly),'次')
print('符合闰年的世纪年(闰年)列表',ly)
结果显示,公元1000-公元9999,一共是90个百年,一共有90次XX00年,其中22个世纪整年是闰年,可以被400整除,如1200、1600、2000年等,还有68个世纪整年是平年,如1000、4600、8100等。答案正确。

不符合闰年的世纪年(平年)有 68 次
不符合闰年的世纪年(平年)列表 ['1000', '1100', '1300', '1400', '1500', '1700', '1800', '1900', '2100', '2200', '2300', '2500', '2600', '2700', '2900', '3000', '3100', '3300', '3400', '3500', '3700', '3800', '3900', '4100', '4200', '4300', '4500', '4600', '4700', '4900', '5000', '5100', '5300', '5400', '5500', '5700', '5800', '5900', '6100', '6200', '6300', '6500', '6600', '6700', '6900', '7000', '7100', '7300', '7400', '7500', '7700', '7800', '7900', '8100', '8200', '8300', '8500', '8600', '8700', '8900', '9000', '9100', '9300', '9400', '9500', '9700', '9800', '9900']
符合闰年的世纪年(闰年)有 22 次
符合闰年的世纪年(闰年)列表 ['1200', '1600', '2000', '2400', '2800', '3200', '3600', '4000', '4400', '4800', '5200', '5600', '6000', '6400', '6800', '7200', '7600', '8000', '8400', '8800', '9200', '9600']
相关文章:
【教学类-48-03】202402011“闰年”(每4年一次 2月有29日)世纪年必须整除400才是闰年)
2000-2099年之间的闰年有25次, 背景需求: 已经制作了对称年月的数字提取,和年月日相等的年份提取 【教学类-48-01】20240205对称的“年”和“月日”(如2030 0302)-CSDN博客文章浏览阅读84次。【教学类-48-01】202402…...
如何开发一个属于自己的人工智能语言大模型?
要开发一个属于自己的人工智能语言模型,你需要遵循以下步骤: 数据收集:首先你需要大量的文本数据来训练你的模型。这些数据可以来自于各种来源,例如书籍、网站、新闻文章等。你需要确保这些数据足够多样化,以便模型能学…...
【HTTP】localhost和127.0.0.1的区别是什么?
目录 localhost是什么呢? 从域名到程序 localhost和127.0.0.1的区别是什么? 域名的等级划分 多网站共用一个IP和端口 私有IP地址 IPv6 今天在网上逛的时候看到一个问题,没想到大家讨论的很热烈,就是标题中这个: …...
Edge浏览器-常用快捷键
按键组合作用Ctrl Shift I开发人员工具Ctrl E定位到 空地址栏Ctrl L定位到 地址栏Ctrl Shift B显示或隐藏 收藏夹栏Ctrl Shift O打开收藏夹(搜索)Ctrl T打开一个新标签页Ctrl W关闭当前标签页Ctrl Shift T重新打开刚才关闭的标签页Ctrl Tab切换到下一个标签页Ctrl…...
C++:Vector动态数组的copy深入理解
动态数组分配的大小默认为2的n次方1,2,4,8... 在main中创建的vertices,push需要放到Vertex中(copy),下一次copy是因为要调整vertices的大小 vertices.push_back(Vertex(1,2,3));//拷贝 第一次&a…...
【PyTorch】PyTorch中张量(Tensor)切片操作
PyTorch深度学习总结 第三章 PyTorch中张量(Tensor)切片操作 文章目录 PyTorch深度学习总结一、前言二、获取张量中的元素1、切片(行、列数)方法2、torch.where()函数3、使元素置零的操作 一、前言 上文介绍了PyTorch中改变张量(Tensor)形状的操作&…...
GeoServer 2.11.1升级解决Eclipse Jetty 的一系列安全漏洞问题
Eclipse Jetty 资源管理错误漏洞(CVE-2021-28165) Eclipse Jetty HTTP请求走私漏洞(CVE-2017-7656) Eclipse Jetty HTTP请求走私漏洞(CVE-2017-7657) Eclipse Jetty HTTP请求走私漏洞(CVE-2017-7658) Jetty 信息泄露漏洞(CVE-2017-9735) Eclipse Jetty 安全漏洞(CVE-2022-20…...
【蓝桥杯选拔赛真题34】C++最大值 第十三届蓝桥杯青少年创意编程大赛C++编程选拔赛真题解析
目录 C/C++最大值 一、题目要求 1、编程实现 2、输入输出...
STM32之USART
概述 串口通信,通用异步收发传输器(Universal Asynchronous Receiver/Transmitter ),简称UART;而USART(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步收发传输器。 USAR…...
unity 点击事件
目录 点击按钮,显示图片功能教程 第1步添加ui button,添加ui RawImage 第2步 添加脚本: 第3步,把脚本拖拽到button,点击button,设置脚本的变量, GameObject添加 Component组件 点击按钮&am…...
idea自带的HttpClient使用
1. 全局变量配置 {"local":{"baseUrl": "http://localhost:9001/"},"test": {"baseUrl": "http://localhost:9002/"} }2. 登录并将结果设置到全局变量 PostMapping("/login")public JSONObject login(H…...
vue3-应用规模化-路由和状态
客户端 vs. 服务端路由 服务端路由指的是服务器根据用户访问的 URL 路径返回不同的响应结果。当我们在一个传统的服务端渲染的 web 应用中点击一个链接时,浏览器会从服务端获得全新的 HTML,然后重新加载整个页面。 然而,在单页面应用中&…...
网络安全检查表
《网络攻击检查表》 1.应用安全漏洞 2.弱口令,默认口令 3.服务器互联网暴露 4.操作系统,中间件安全漏洞 5.研发服务器,邮件服务器等安全检查...
SSM框架,Maven的学习(下)
依赖传递和依赖冲突 依赖传递指的是当一个模块或库 A 依赖于另一个模块或库 B,而 B 又依赖于模块或库 C,那么 A 会间接依赖于 C。这种依赖传递结构可以形成一个依赖树。当我们引入一个库或框架时,构建工具(如 Maven、Gradle&…...
Vivado开发FPGA使用流程、教程 verilog(建立工程、编译文件到最终烧录的全流程)
目录 一、概述 二、工程创建 三、添加设计文件并编译 四、线上仿真 五、布局布线 六、生成比特流文件 七、烧录 一、概述 vivado开发FPGA流程分为创建工程、添加设计文件、编译、线上仿真、布局布线(添加约束文件)、生成比特流文件、烧录等步骤&a…...
C语言之动态内存管理
目录 1. 为什么要有动态内存分配2. malloc和freemallocfree 3. calloc和realloccallocrealloc 4. 常见的动态内存的错误对NULL直接的解引用操作对动态开辟空间的越界访问对非动态开辟内存使用free释放使用free释放一块动态开辟内存的一部分对同一块动态内存多次释放动态开辟内存…...
【AIGC风格prompt深度指南】掌握绘画风格关键词,实现艺术模仿的革新实践
[小提琴家]ASCII风格,点,爆炸,光,射线,计算机代码 由冰和水制成的和平标志]非常详细,寒冷,冰冻,大气,照片逼真,流动,16K 胡迪尼模拟火和水&#x…...
Qt安装配置教程windows版(包括:Qt5.8.0版本,Qt5.12,Qt5.14版本下载安装教程)(亲测可行)
目录 Qt5.8.0版本安装教程Qt5.8.0版本下载安装 Qt5.12.2版本安装教程下载安装 Qt 5.14.2安装教程下载安装和创建项目 参考视频 QT为嵌入式系统提供了大量的库和可重用组件。 WPS Office,咪咕音乐,Linux桌面环境等都是QT开发的。 Qt5.8.0版本安装教程 Q…...
SpringCloud-Ribbon实现负载均衡
在微服务架构中,负载均衡是一项关键的技术,它可以确保各个服务节点间的负载分布均匀,提高整个系统的稳定性和性能。Spring Cloud 中的 Ribbon 就是一种负载均衡的解决方案,本文将深入探讨 Ribbon 的原理和在微服务中的应用。 一、…...
Qt网络编程-TCP与UDP
网络基础 TCP与UDP基础 关于TCP与UDP的基础这里就不过多介绍了,具体可以查看对应百度百科介绍: TCP(传输控制协议)_百度百科 (baidu.com) UDP_百度百科 (baidu.com) 需要知道这两者的区别: 可靠性: TC…...
C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...
[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...


