Python串反面,印后每换一次

2024-04-27 03:19:53 发布

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

我需要用户输入一些文字,以后这段文字应该颠倒。 但在倒车时,我需要打印每一步,我真的不知道它是如何工作的,它是如何倒车的。你知道吗

如果用户输入-stack,最后我需要得到kcats,但是在我还需要打印所有步骤之前(例如,如果它从第一个和最后一个字母开始),第一步应该像-ktacs那样继续。你知道吗

我有某种密码:

input_string = input("\n Please Enter Text To Reverse - ")
for i in input_string:
    print(input_string[::-1])

它倒过来,但我不能一步一步地打印出来。需要帮忙吗?你知道吗


Tags: totext用户密码inputstringstack字母
3条回答

如果要打印每个步骤,则可以使用递归方法:

递归之美:

string_='stack'

def recursion_reverse(string_1):
    if not string_1:
        return ""
    else:
        front_part=recursion_reverse(string_1[1:])
        back_part=string_1[0]
        print(front_part+back_part + string_[:-len(string_1)])


    return front_part+back_part[0]

print(recursion_reverse(string_))

输出:

kstac
kcsta
kcast
kcats
kcats
kcats

这应该很管用:

txt = "hello world"
l = len(txt)
for n in range(1, l//2+1):
    print txt[-n:][::-1] + txt[n:-n] + txt[:n][::-1] # reversed end + middle + reversed start

您也可以使用这个(但我发现它不太可读):

print txt[l-1:-n-1:-1] + txt[n:-n] + txt[n-1:None:-1]

你可以试试这个。你知道吗

   input_string = input("\n Please Enter Text To Reverse - ")
   i_string = input_string.split(" ")
   length = len(i_string)

   for i in range(len(i_string)-1,-1,-1):
      print(i_string[i])
   print(i_string[::-1])

希望这会有帮助。你知道吗

相关问题 更多 >