python 反转字符串中的单词

mac2025-09-29  17

1、问题描述:

you are student    ------>结果为:student are you, 考虑不使用split和reverse 方法

2、 思路:

按照单词逆序,然后整个字符串逆序。

input your words:you are student First change:uoy era tneduts Second change:student are you

3.话不投机,直接上代码:

# 交换 def swap(str1,begin,to):     temp = str1[begin]     str1[begin]= str1[to]     str1[to]=temp   #字符串反转 def turnover(lists, begin,to):     while(begin<to):         swap(lists,begin,to)         begin= begin+1         to= to-1     return lists   test = input("input your words:") list1 = list(test)   len1 = len(list1)   index2 = [-1] j=0 while(j< len1):          if list1[j]==' ':         index2.append(j)       j= j+1   index2.append(len1)  #构建空格位置的list,其实就是达到一个split的目的   index1 = index2   for i in range(len(index1)-1):     turnover(list1,index1[i]+1,index1[i+1]-1)   print("First change:",end='')   for i in list1:          print(i,end='')   #上面是完成了第一次反转,按照单词反转   print() print("Second change:",end='')   turnover(list1,0,len1-1)   #把字符串整体反转   for i in list1:          print(i,end='') 上面这种方式通用对于前后有空格的情况可以处理。 

input your words: you are a student First change: uoy era a tneduts Second change:student a are you    input your words:you are a student  First change:uoy era a tneduts  Second change: student a are you  

最新回复(0)