在Python中如何循环判断查询闰年
1. 前言
闰年是什么:
闰年是公历中的名词。闰年分为普通闰年和世纪闰年。
普通闰年:公历年份是4的倍数的,且不是100的倍数,为闰年。(如2004年就是闰年);
世纪闰年:公历年份是整百数的,必须是400的倍数才是世纪闰年(如1900年不是世纪闰年,2000年是世纪闰年);
2. 判断条件
某某年是4的倍数的,且不是100的倍数,或者是400的倍数。
条件转化代码为:
if (i % 4 == 0 and i % 100 != 0) or i % 400 == 0:
3. 所用到的循环
因为要一直都可以输入查询,那么使用while True 循环
4. 错误的输入如何拦截
假如在使用过程中错误的输入带有字母等字符串标识的字符那么如何让系统报错?
isdigit()函数
函数原型:int isdigit(int c);
可以看出isdigit()的形参是int型。
而在调用实参使用时:只能一个一个字符的传值,以此来判断传值的字符是否是数字
isdisdig()函数作用为判断字符串是否全部为数字
5.程序解析
1 首先定义一个空的列表将所输入的数据全部插入到空列表中。
2 while True 循环开始
3 输入所需查询的年月
4 isdigit()函数的使用。需注意isdigit()只能一个一个字符的传值,以此来判断传值的字符是否是数字。
如果是真则运算;是假则报错。
5 将所述的年月加入到空列表中。
6 遍历列表
7 判断数据是否满足闰年条件
6注意的点
1 input 输入的数字为字符串类型,在做运算时需改变为数字形。
2 year.isdigit()中,变量year是字符串才可以判断字符串中 是否全部为数字,若year是int则会报错。