使用循环反向打印多个输入字符串

Printing multiple input strings in reverse using a loop

编写一个程序,将一行文本作为输入,并反向输出该行文本。程序重复,当用户为文本行输入“Quit”、“quit”或“q”时结束。

Ex: If the input is:

Hello there

Hey

quit

then the output is:

ereht olleH

yeH

''' 我遇到了这个问题,我的老师根本无法解释清楚。我已经能够反向打印出一个输入,但我不确定如何打印出所有输入并用 'q'、'quit' 或 'Quit' 打破循环。请帮忙

到目前为止我的代码:

mystring = str(input())

myreverse = ''

for i in mystring:
    myreverse= i+ myreverse
print(myreverse)

您想要实现这样的循环吗?

exit = False
while not exit:
  phrase = str(input("Type something (exit = q or quit): "))

  if phrase.lower() == 'q' or phrase.lower() == 'quit':
    exit = True
    break
  else:
    myreverse = ''

    for element in phrase:
        myreverse= element + myreverse

    print("Reversed = %s\n" % myreverse)

干得好。你们非常亲密。如果老师不好,学习可能会很困难,但只要有决心和努力,你一定会变得很好 python。继续努力。

让我先帮助您修复代码,然后我会提出改进建议。

while True:
    mystring = str(input())
    if mystring == 'Quit' or mystring == 'quit' or mystring == 'q':
        break
    myreverse = ''
    for i in mystring:
        myreverse= i+ myreverse
    print(myreverse)

这是我为修复代码所做的工作:

  • 将您现有的代码放入 while True: 循环中,使其 运行 永远存在。
  • 放置一个 if 语句来检查 Quit、quit 和 q 输入。

这是上述代码的改进版本:

while True:
    my_string = str(input())
    if my_string in ['q', 'quit', 'Quit']:
        exit()
    print(my_string[::-1])

以上代码的工作原理解释如下:

  • while True 使程序 运行 永远
  • if 语句检查用户是否输入了 Quit、quit 或 q。
  • exit() 关闭程序
  • my_string[::-1] 反转字符串。这消除了使用 for 循环来反转字符串的需要。