Python - 字符串反向,每次更改后打印

时间:2017-11-06 04:43:34

标签: python string input reverse

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

如果用户输入 - stack,最后我需要获得newx=(300,320) ,但在我需要打印所有步骤之前,例如,如果从第一个和最后一个字母开始,第一步应该是 - kcats并继续这样做。

我有一些代码:

ktacs

它反过来,但我不能一步一步地打印出来。有什么帮助吗?

3 个答案:

答案 0 :(得分: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])

希望这会有所帮助。

答案 1 :(得分:-1)

这应该可以正常工作:

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]

答案 2 :(得分:-1)

如果您想打印每一步,那么您可以使用递归方法:

递归之美:

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