Home  >  Article  >  Backend Development  >  Python implements a method to output the specified input string in reverse order

Python implements a method to output the specified input string in reverse order

不言
不言Original
2018-04-26 16:31:053891browse

This article mainly introduces the 6 methods of python to realize the reverse output of the specified input string, which has certain reference value. Interested friends can refer to it

For a given String, output in reverse order. This task is a very simple operation for Python. After all, the powerful list and string processing functions are enough to cope with these problems. Today I summarized the reverse order output of strings in Python. Several commonly used methods, a total of six methods have been summarized. I personally think it is relatively comprehensive. If you have other methods, please feel free to add them.

Method 1:Use the string slicing function directly Reverse the string

Method 2:Convert the string to a list using the reverse function

Method 3:Create a new list from back to front Add elements

Method 4: Use the ready-made method of collections module extendleft

Method 5: Recursive implementation

Method 6: Use the basic Swap operation to exchange symmetrically positioned characters based on the middle

The following is the specific implementation:

#!usr/bin/env python 
#encoding:utf-8 
 
''''''' 
__Author__:沂水寒城 
功能:输入一个字符串,倒叙输出 
''' 
 
import collections 
 
 
 
def func1(one_str): 
 ''''' 
 直接使用字符串切片功能逆转字符串 
 ''' 
 return one_str[::-1] 
 
 
def func2(one_str): 
 ''''' 
 将字符串转换为列表使用reverse函数 
 ''' 
 one_str_list = list(one_str) 
 one_str_list.reverse() 
 return ''.join(one_str_list) 
 
 
def func3(one_str): 
 ''''' 
 新建一个列表,从后往前添加元素 
 ''' 
 one_list=[] 
 for i in range(len(one_str)-1,-1,-1): 
  one_list.append(one_str[i]) 
 return ''.join(one_list) 
 
 
def func4(one_str): 
 ''''' 
 借助于collections模块现成的方法extendleft 
 ''' 
 deque1=collections.deque(one_str) 
 deque2=collections.deque() 
 for one_char in deque1: 
  deque2.extendleft(one_char) 
 return ''.join(deque2) 
 
 
def func5(one_str): 
 ''''' 
 递归实现 
 ''' 
 if len(one_str)<=1: 
  return one_str 
 return one_str[-1]+func5(one_str[:-1]) 
 
 
def func6(one_str): 
 &#39;&#39;&#39;&#39;&#39; 
 借助基本的Swap操作,以中间为基准交换对称位置的字符 
 &#39;&#39;&#39; 
 one_str_list=list(one_str) 
 if len(one_str_list)==0 or len(one_str_list)==1: 
  return one_str_list 
 i=0 
 length=len(one_str_list) 
 while i < length/2: 
  one_str_list[i], one_str_list[length-i-1]=one_str_list[length-i-1], one_str_list[i] 
  i+=1 
 return &#39;&#39;.join(one_str_list) 
 
 
def main_func(str_list): 
 &#39;&#39;&#39;&#39;&#39; 
 主调用函数 
 &#39;&#39;&#39; 
 for one_str in str_list: 
  one_list=[] 
  one=[] 
  one_list.append(func1(one_str)) 
  one_list.append(func2(one_str)) 
  one_list.append(func3(one_str)) 
  one_list.append(func4(one_str)) 
  one_list.append(func5(one_str)) 
  one_list.append(func6(one_str)) 
  print &#39;字符串{0}逆序为:&#39;.format(one_str) 
  print one_list 
 
 
if __name__ == &#39;__main__&#39;: 
 str_list=[&#39;123456&#39;,&#39;abcdefg&#39;,&#39;zyxvuw&#39;,&#39;Together_CZ&#39;] 
 main_func(str_list)

The results are as follows:

字符串123456逆序为: 
[&#39;654321&#39;, &#39;654321&#39;, &#39;654321&#39;, &#39;654321&#39;, &#39;654321&#39;, &#39;654321&#39;] 
字符串abcdefg逆序为: 
[&#39;gfedcba&#39;, &#39;gfedcba&#39;, &#39;gfedcba&#39;, &#39;gfedcba&#39;, &#39;gfedcba&#39;, &#39;gfedcba&#39;] 
字符串zyxvuw逆序为: 
[&#39;wuvxyz&#39;, &#39;wuvxyz&#39;, &#39;wuvxyz&#39;, &#39;wuvxyz&#39;, &#39;wuvxyz&#39;, &#39;wuvxyz&#39;] 
字符串Together_CZ逆序为: 
[&#39;ZC_rehtegoT&#39;, &#39;ZC_rehtegoT&#39;, &#39;ZC_rehtegoT&#39;, &#39;ZC_rehtegoT&#39;, &#39;ZC_rehtegoT&#39;, &#39;ZC_rehtegoT&#39;]

Related recommendations:

Python implements finding the longest length for a given string Non-repeating substrings

Python implementation reads strings and distributes them by columns and then outputs them by rows


The above is the detailed content of Python implements a method to output the specified input string in reverse order. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn