编写如下程序
a.用户输入1-7七个数字,分别代表周一到周日
b.如果输入1~5,打印对应的“周一”~“周五”,如果输入的数字是6或7,打印输出“周末”
c.如果输入0,退出循环
d.输入其他内容,提示:“输入有误,请重新输入!”
提示:本题可以使用if和while循环,同时需要校验用户的输入是否正确。不用考虑浮点数等情况。
方法一:
list1 = [1,2,3,4,5,6,7] #定义一个数字列表
list2 = ["周一","周二","周三","周四 ","周五","周末","周末"] #定义一个文字列表
while True:
num = int(input("请输入对应的数字:")) #输入1~7的数字
if num==0: # 输入的值等于0,满足条件1
print("程序退出") # 打印
break #退出当前循环
if num in list1: # 如果输入的值在列表当中,满足条件2,执行下一步
print("今天是{}".format(list2[num-1])) # 使用format函数([num-1]是指的list2的下标)
else: # 输入不属于0-7范围的数字,执行条件3
print("输入有误,请重新输入!") # 打印
以上实例运行结果:
请输入对应的数字:1
今天是周一
请输入对应的数字:2
今天是周二
请输入对应的数字:3
今天是周三
请输入对应的数字:4
今天是周四
请输入对应的数字:5
今天是周五
请输入对应的数字:6
今天是周末
请输入对应的数字:7
今天是周末
请输入对应的数字:8
输入有误,请重新输入!
请输入对应的数字:0
程序退出
方法二:
weekdays = {
"1": "周一",
"2": "周2",
"3": "周3",
"4": "周4",
"5": "周5",
"6": "周末",
"7": "周末",
}
while True:
user_input = input("请输入数字:")
if user_input in weekdays:
# 2 ==> weekdays["2"]
print(weekdays[user_input])
elif user_input == "0":
break
else:
print("输入错误")