习题解析之:缩写月份单词
【问题描述】
月份的缩写为月份单词的前3个字母(九月为前4个),且首字母大写,以 '.' 做为缩写结束标记。月份的英文单词及其缩写如下表所示:

编写一个程序,用户输入一个月份单词,不论输入的单词各字符是大写还是小写,请正确输出对应月份的缩写。当输入单词拼写错误时,输出“spelling mistake”。
提示:
字符串有以下方法可用
str.upper() 转换字符串 str 中所有字母为大写
str.lower() 转换字符串 str 中所有字母为小写
str.capitalize() 把字符串 str 的第一个字符大写
月份名列表
month_lst = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
输入格式
某月份的英文单词
输出格式
该月的缩写或“spelling mistake”
示例 1
输入:
february
输出:
Feb.
示例 2
输入:
auGust
输出:
Aug.
【编程思路】
题目提示给出的月份名列表中各月份英文单词的首字母大写,其他字母均小写。因此为方便处理,将输入的英文单词先全部字母变为小写,再将首字母变为大写,即
word = input().lower().capitalize()。
若输入的英文单词在月份名列表 month_lst,输出其缩写,9 月份缩写取前 4 个字符,其他月份缩写取前 3 个字符;
若输入的英文单词不在月份名列表 month_lst,输出 spelling mistake。
编写的源程序如下:

浙公网安备 33010602011771号