我想编写一个程序,当用户键入1到7(包括1和7)之间的整数时,它会打印出星期的相应日期。这就是我到目前为止所拥有的。我无法弄清楚当x
具有特定值时如何设置,程序将字符串打印到另一个特定值,即当用户写1
时,程序应该打印str(0)是'MONDAY'
。
x = (int(input('please type a number from 1 to 7, both inclusive: ')))
days_of_the_week = ['MONDAY',
'TUESDAY',
'WEDNESDAY',
'THURSDAY',
'FRIDAY',
'SATURDAY',
'SUNDAY']
for x in range(8):
for d in range(0,7):
print(days_of_the_week(d))
回答!我使用了字典,它比使用列表和所有循环更好。谢谢!
答案 0 :(得分:2)
摆脱那些嵌套循环;你根本不需要它们。使用方括号访问list
,而不是括号。 list
是0索引的(它们的第一个元素是元素号0),所以你要用这个替换这些循环:
print(days_of_the_week[x-1])
答案 1 :(得分:0)
直接回答这个问题,
days_of_the_week = {1: 'MONDAY',
2: 'TUESDAY',
3: 'WEDNESDAY',
4: 'THURSDAY',
5: 'FRIDAY',
6: 'SATURDAY',
7: 'SUNDAY',
}
x = int(input('Please type a number from 1 to 7, both inclusive: '))
print(days_of_the_week[x])
会做你想要的。但我会将这些名字存储在字典中:
SELECT * FROM "user";
答案 2 :(得分:-1)
您要在此处执行的操作是选择编号与用户输入相对应的日期。但是,数组从0开始,因此您需要从输入中减去1以匹配相应的日期。如果你没有执行(x-1),那么输入1会输出:TUESDAY,因为TUESDAY是从0开始的数组中的元素1.(在这种情况下,MONDAY是元素0.)我不会详细介绍为什么这些从零开始,但有一个good reason。不过,我不确定你对for循环做了些什么。
x = (int(input('please type a number from 1 to 7, both inclusive: ')))
days_of_the_week = ['MONDAY', 'TUESDAY','WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY']
print(days_of_the_week[x-1])
答案 3 :(得分:-2)
if( 1 <=x || x => 7)
print(days_of_the_week[x-1]);
else:
print("incorrect input");
您可以根据需要设置错误语句的格式。