如何根据您选择的选项更改打印对账单顺序

2024-03-29 09:23:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我想打印语句,以根据您选择的答案进行更改首先。然后呢你只有一定的机会。你知道吗

例如,你有三个选择A、B和C。如果你选择第一个,它会说“那是错误的”,如果你选择B作为第二个,它会说“那仍然是错误的,如果你选择C”,你甚至在尝试吗?。你知道吗

但如果你先选B或C,它会先说“那是错的”。取决于你选择的第一,第二或第三打印将改变

for tries in range(3):

    Response = input("""Response

A)Love 

B)Dog

C)Cast

D)Blowerfish""")

    if Response != "A" or Response != "a":
        print("That is wrong")
        break
    elif: Response != "A" or Response != "a"
        print("That is still wrong")

    elif: Response != "A" or Response != "a"
        print("Are you even trying")
    else:
        print("Out of Chances")

我怎样才能让它工作,或者我需要添加或更改什么才能让它按我想要的方式工作。你知道吗


Tags: or答案inforthatisresponse错误
3条回答

您应该阅读更多关于if语句和循环的内容。您当前的实现将同一if语句循环三次。当前,循环总是在第一个if语句处停止,如果您的响应是a,则直接转到else,因为您要对同一事物进行三次比较。除非要提前退出循环,否则应该删除break语句。解决这个问题的简单方法是将您的tries变量添加到所有if语句中,以便它比较响应之外的尝试次数,例如if(response!=“A”或响应!=“a”)并尝试==0:。这不是很好的实现方法,但应该可以让您开始。你知道吗

你还有:在elif语句的错误位置,它应该在行的末尾。你知道吗

您可以在if-else逻辑中使用tries。你知道吗

if Response != "A" or Response != "a":
    if tries == 0:
        print("That is wrong")
    elif tries == 1:
        print("That is still wrong")
    elif tries == 2:
        print("Are you even trying")

使用当前迭代(尝试)的索引来决定要显示的错误消息。这可以用一个笨拙的if语句来完成,也可以从一个列表中几乎检索到消息—这是最好的。你知道吗

prompt = 'a, b, or c: ' #your multi-line input string
err_messages = ['That is wrong', 'That is still wrong','Are you even trying?']
for tries in range (3):
    response = input(prompt)
    if response.lower() == 'd':
        print('you got it right')
        break
    elif response.lower() in 'abc':
        print(err_messages[tries])
    else:
        print('invalid choice')

我还将大写变量重命名为小写,因为按惯例,大写是为类名保留的

相关问题 更多 >