问题描述
让我们来看看原题是怎么说的:在输入的一个字符串中包含年份信息,正确年份信息表示为年份-月份,其中年份在1979到2019之中,月份表示为01,02...11,12。请找出正确年份的第一个数字的位置。如输入1993dec12342019-1216.应输出12.因为2的位置就是12。
解决方案
了解到题目后,要知道体中的关键信息,抓出正确年份出现的第一标准,也就是“-”,然后在判断“-”前后年月份是否符合要求。
(1)分析题目后,就编程具体实施。首先肯定是找到字符串中的“-”,所以采用for来遍历。
(2)找到“-”之后,在截取字符串中“-”前的四个数字,判断其是否在1979到2019之间。
(3)然后截取“-”惠普的两位数字判断其是否在01,,,12中。
(4)最后直接输出满足所有条件的年份的第一个数字的位置。否则输出-1.
实施代码:
str = input() List1 = [x for x in range(1979,2020)] List2 = ['01','02','03','04','05','06','07','08','09','10','11','12'] for i in str: if i == '-': a = str.index(i) b = int(''.join(str[a-4:a])) c = ''.join(str[a+1:a+3]) if b in List1 and c in List2: print(a-3) else: print(-1) |
END
实习编辑 | 王文星
责 编 | 江来洪
where2go 团队
微信号:算法与编程之美
长按识别二维码关注我们!
温馨提示:点击页面右下角“写留言”发表评论,期待您的参与!期待您的转发!
总结以上是内存溢出为你收集整理的Python|判断程序设计比赛中的日期正误全部内容,希望文章能够帮你解决Python|判断程序设计比赛中的日期正误所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)