Python:反向打印字符串

vof42yt1  于 2023-02-17  发布在  Python
关注(0)|答案(6)|浏览(162)

编写一个程序,它接受一行文本作为输入,然后反向输出这行文本。程序重复,当用户为这行文本输入"完成"、"完成"或"d"时结束。
例如:如果输入为:

Hello there
Hey
done

则输出为:

ereht olleH
yeH

我已经有了这样的代码。我不明白我做错了什么。请帮助。

word = str(input())
the_no_word = ['Done', 'done', 'd']
while word == "Done" and word == "done" and word == "d":
    break
print(word[-1::-1])
brqmpdu1

brqmpdu11#

这是我在Zybooks的实验室作业中所做的,并且通过了我所有的测试:

userinput = str(input())
stop = ['Done', 'done', 'd']

while userinput not in stop:
    print(userinput[::-1])  
    userinput = str(input())

确保在while循环的末尾添加“userinput = str(input())”,这样就不会以无限循环结束

ewm0tg9j

ewm0tg9j2#

这可能对您有用:

word = ""
the_no_word = ['Done', 'done', 'd']
while word not in the_no_word:
    word = str(input())
    print(word[-1::-1])

你需要在每次循环后将用户输入输入到word中,并检查在the_no_word的列表中word是否是而不是。让我知道这是否是你要找的。

qqrboqgw

qqrboqgw3#

var1 = str(input())
bad_word = ['done', 'd', 'Done']
while var1 not in bad_word:
    print(var1[::-1])
    var1 = str(input())

只是做了这道题,用了这个答案。

bgibtngc

bgibtngc4#

你可以这样做:

while (word := input()) not in {'Done', 'done', 'd'}:
    print(word[::-1])
l7mqbcuq

l7mqbcuq5#

这应该对你有用!

word = str(input())
the_no_word = ['Done', 'done', 'd']
while word not in the_no_word:
    print(word[-1::-1])
word = str(input())
zzlelutf

zzlelutf6#

string = str(input())

no_words = ['Done','done','d']
while string not in no_words:
    if string in no_words:
        print()
    else:
        print(string[-1::-1])
        string = str(input())

相关问题