题目:编写程序,实现根据第一或前两个字母输出 Monday、Tuesday、Wednesday、Thursday、Friday、Saturday 和 Sunday 之中完整单词的功能。
要求:本实例的完整单词包含 7 个,它们分别是 Monday、Tuesday、Wednesday、Thursday、Friday、Saturday 和 Sunday。其中,Monday、Wednesday、Friday 可根据用户输入的首字母判断,Tuesday 和 Thusday、Saturday 和 Sunday 需根据用户连续输入两次字母才能进一步判断,具体规则如下:
- 若用户第一次输入的字母为“m”、“w”和“f”,则直接返回“Monday”、“ Wednesday”和“Friday”;
- 若用户第一次输入“t”,需要再输入第 2 个字母进行判断,输入“h”返回“Thusday”,输入“u”返回“Tuesday”;
- 若用户第一次输入“s”,需要再输入第 2 个字母进行判断,输入“a”返回“Saturday”,输入“u”返回“Sunday”;
- 若用户第一次输入其它字母,则提示用户“请输入正确的字母”。
从以上分析可知,第一个或第二个字母可以作为获取完整单词的键,因此这里可以创建一个包含 7 个键值对的字典,其中,键“m”、“w”和“f”对应的值为“Monday”、“Wednesday”和“Friday”,则键“t”和“s”对应的值是字典{‘h’: ‘thursday’, ‘u’: ‘tuesday’}和{‘a’: ‘saturday’, ‘u’: ‘sunday’}。
代码:
d={'m':'monday','w':'wednesday','f':'firday','h':'thursday','e':'tuesday','a':'saturday','u':'sunday'}
n=input("请输入第一位字母:")
if (n!='m' and n!='w' and n!='f' and n!='t' and n!='s'):
print("请输入正确的字母")
else:
if d.get(n)==None:
two=input("请输入第二个字母:")
if(n=='t'and two=='u'):
t=d['e']
else:
t=d[two]
else:
t=d[n]
print(t)
运行结果:
请输入第一位字母:s
请输入第二个字母:u
sunday
请输入第一位字母w
wednesday