类型:字符串
描述
一个8位表示的年月日,如20200220,前4位表示年份,5-6位表示月份,7-8位表示日期。编写程序对日期数据进行处理和分析。
输入格式
第一行输入一个8位长度的日期形式(题目确保输入的字符串只包含0-9的数字,且长度为8位)
第二行输入一个分割符号sign
输出格式
-
根据输入数据中表示年份的数字判断是否为闰年。
-
输出当前月份共有多少天?
-
输出用sign符号分隔的日期输出,例如输入"/",输出2020/09/09。
-
只考虑月份和日期的合法性,判断输入的数字是否为一个合法的日期。
-
输出当前月份的单词和缩写形式
输入输出示例 示例仅为格式展示,与测试数据无关
示例 1
示例 2
第1关 输入数据中表示年份的数字判断是否为闰年
def leap(current_date):
"""接收一个用8个字符表示日期的字符串为参数,判断这个日期中的年份是否为闰年
返回值为布尔型。
闰年的判定方法是:能被400整除或能被4整除且同时不能被100整除的是闰年。
"""
# 补充你的代码
if (int(current_date[:4]) % 4 ==0 or int(current_date[:4]) % 400 ==0) and int(current_date[:4]) % 100 !=0:
return True
else:
return False
if __name__ == '__main__':
date = input() # 输入一个表示年份的8位数字字符串
if leap(date[:4]): # 如果输入的年份是闰年
print(f'{date[:4]}年是闰年')
else:
print(f'{date[:4]}年不是闰年')
或者
def leap(current_date):
"""接收一个用8个字符表示日期的字符串为参数,判断这个日期中的年份是否为闰年
返回值为布尔型。
闰年的判定方法是:能被400整除或能被4整除且同时不能被100整除的是闰年。
"""
# 补充你的代码
year = int(current_date[:4])
if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):
return True
else:
return False
if __name__ == '__main__':
date = input() # 输入一个表示年份的8位数字字符串
if leap(date[:4]): # 如果输入的年份是闰年
print(f'{date[:4]}年是闰年')
else:
print(f'{date[:4]}年不是闰年')
第2关 输出当前月份共有多少天
def days_of_month(current_date):
"""接收一个用8个字符表示日期的字符串为参数,计算这个日期中的月份有多少天?