python实现对指定输入的字符串逆序输出的6种方法

对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法,一共总结出来了六种方法,个人认为比较全面了,如有其他方法欢迎前来补充

方法一:直接使用字符串切片功能逆转字符串

方法二:将字符串转换为列表使用reverse函数

方法三:新建一个列表,从后往前添加元素

方法四:借助于collections模块现成的方法extendleft

方法五:递归实现

方法六:借助基本的Swap操作,以中间为基准交换对称位置的字符

下面是具体的实现:

#!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):
 '''''
 借助基本的Swap操作,以中间为基准交换对称位置的字符
 '''
 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 ''.join(one_str_list) 

def main_func(str_list):
 '''''
 主调用函数
 '''
 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 '字符串{0}逆序为:'.format(one_str)
  print one_list 

if __name__ == '__main__':
 str_list=['123456','abcdefg','zyxvuw','Together_CZ']
 main_func(str_list)

结果如下:

字符串123456逆序为:
['654321', '654321', '654321', '654321', '654321', '654321']
字符串abcdefg逆序为:
['gfedcba', 'gfedcba', 'gfedcba', 'gfedcba', 'gfedcba', 'gfedcba']
字符串zyxvuw逆序为:
['wuvxyz', 'wuvxyz', 'wuvxyz', 'wuvxyz', 'wuvxyz', 'wuvxyz']
字符串Together_CZ逆序为:
['ZC_rehtegoT', 'ZC_rehtegoT', 'ZC_rehtegoT', 'ZC_rehtegoT', 'ZC_rehtegoT', 'ZC_rehtegoT']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • python实现对指定字符串补足固定长度倍数截断输出的方法

    简单的小练习,注意考虑全可能就行,下面是实现: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组: •长度不是8整数倍的字符串请在后面补数字0,空字符串不处理. ''' def func_test(): ''' 补足固定长度倍数输出 ''' a=raw_input() b=raw_input() len_a=len(a) len_b=len(b) a_list

  • python按照多个字符对字符串进行分割的方法

    本文实例讲述了python按照多个字符对字符串进行分割的方法.分享给大家供大家参考.具体分析如下: 这段python代码通过这规则表达式对字符串进行分割,使用\w作为分割符,只要不是字母和数字的就会被分割开来. import re DATA = "Hey, you - what are you doing here! welcome to jb51?" print re.findall(r"[\w']+", DATA) 输出结果如下 复制代码 代码如下: ['Hey

  • Python实现字符串格式化输出的方法详解

    本文实例讲述了Python实现字符串格式化输出的方法.分享给大家供大家参考,具体如下: python属于强类型的语言,如果像java一样操作字符串和数字的"+"时,会出现TypeError.而python的格式化方法有多种,比如使用占位符,使用format,或者是自定义模版等等.这里介绍了其中的几种方法 下面这个例子很好的说明了python属于强类型语言: print "abc" + 123 Traceback (most recent call last): Fi

  • python 按照固定长度分割字符串的方法小结

    有如下的一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21'. 借助python脚本,可以轻松实现,原理就是:字符串的按照固定长度拆分. 1,文件mac.txt,保存了如下的mac地址: 50E549E32ECB 902B3413EFA6 50E549ECBA1C 902B3457B16F 1C6F65296DF9 902B34131A14 50E549E3E2F8 50E5493A2696 902B345FB021 902

  • Python实现字符串格式化的方法小结

    Python2.6+ 增加了str.format函数,用来代替原有的'%'操作符.它使用比'%'更加直观.灵活.下面详细介绍一下它的使用方法. 下面是使用'%'的例子: "" "PI is %f..." % 3.14159 # => 'PI is 3.141590...' "%d + %d = %d" % (5, 6, 5+6) # => '5 + 6 = 11' "The usage of %(language)s&quo

  • python每次处理固定个数的字符的方法总结

    首先,来看每次处理一个字符的情况,可以有如下方法去实现:方法一: 复制代码 代码如下: >>> a='1234567'    >>> list(a)    ['1', '2', '3', '4', '5', '6', '7']    >>> 方法二: 复制代码 代码如下: >>> a='1234567'    >>> for i in a:    ...     print i    ...    1    2   

  • python实现指定字符串补全空格的方法

    本文实例讲述了python实现指定字符串补全空格的方法.分享给大家供大家参考.具体分析如下: 如果希望字符串的长度固定,给定的字符串又不够长度,我们可以通过rjust,ljust和center三个方法来给字符串补全空格 rjust,向右对其,在左边补空格 s = "123".rjust(5) assert s == " 123" ljust,向左对其,在右边补空格 s = "123".ljust(5) assert s == "123

  • python实现对指定输入的字符串逆序输出的6种方法

    对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法,一共总结出来了六种方法,个人认为比较全面了,如有其他方法欢迎前来补充 方法一:直接使用字符串切片功能逆转字符串 方法二:将字符串转换为列表使用reverse函数 方法三:新建一个列表,从后往前添加元素 方法四:借助于collections模块现成的方法extendleft 方法五:递归实现 方

  • C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析

    用字符数组方法:基本思路是,先判断字符的结束标志'\0',然后从该位置向前输出.实现代码: 复制代码 代码如下: #include<iostream>using namespace std;int main(){ char a[50]; cout<<"please input a string:"; cin>>a; int i=0,k=0; while(i<50){        if(a[i]=='\0'){         k=i;    

  • Python实现按照指定要求逆序输出一个数字的方法

    本文实例讲述了Python实现按照指定要求逆序输出一个数字的方法.分享给大家供大家参考,具体如下: 问题是:输入一个数字,按照指定要求逆序输出该数字,很简单,下面是实现: #!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:逆序输出一个数字 如果数字是正数直接输出如:177--->771 如果数字是负数保留负号如:-945--->-549 如果数字以0结果逆序后需要去除0如:100--->1 如果数字很大会造成溢出返

  • Python实现字符串逆序输出功能示例

    本文实例讲述了Python实现字符串逆序输出功能.分享给大家供大家参考,具体如下: 1.有时候我们可能想让字符串倒序输出,下面给出几种方法 方法一:通过索引的方法 >>> strA = "abcdegfgijlk" >>> strA[::-1] 'kljigfgedcba' 方法二:借组列表进行翻转 #coding=utf-8 strA = raw_input("请输入需要翻转的字符串:") order = [] for i in

  • C语言 将字符串逆序输出的实例

    将字符串逆序输出:我先说一个我的错误代码,一开始真的不知道哪里错了,但是当时的想法是自以为是可以的,大家可以先看看我的错误代码 这个代码是错误的,正确的在最下方,不要急,我只是展示一下自己的错误,哈哈 #include <stdio.h> #include <iostream> #include <string.h> #include <math.h> using namespace std; void reverse(char a[]) { char *p

  • Java控制台输入数组并逆序输出的方法实例 原创

    输入一个数组,然后颠倒次序进行输出,这种算法在程序开发中经常用到,下面我们通过一个小实例来看看怎么实现在控制台输入一个数组,并让其逆序输出的. 源码: import java.util.Scanner; public class Test01 { public static void main(String[] args){ System.out.println("请输入五个数"); int[]l=new int [5]; for(int i=0;i<5;i++) l[i]=ne

  • Python字符串逆序输出的实例讲解

    1.有时候我们可能想让字符串倒序输出,下面给出几种方法 方法一:通过索引的方法 >>> strA = "abcdegfgijlk" >>> strA[::-1] 'kljigfgedcba' 方法二:借组列表进行翻转 #coding=utf-8 strA = raw_input("请输入需要翻转的字符串:") order = [] for i in strA: order.append(i) order.reverse() #将列

  • C++实现英文句子中的单词逆序输出的方法

    本文实例讲述了C++实现英文句子中的单词逆序输出的方法.分享给大家供大家参考,具体如下: #include "stdafx.h" #include <iostream> #include <string> #include <stack> using namespace std; int main(int arc, char** argv) { string str="I come from liaoning."; stack&l

  • python对指定字符串逆序的6种方法(小结)

    对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法 方法一:直接使用字符串切片功能逆转字符串 #!usr/bin/env python # encoding:utf-8 def strReverse(strDemo): return strDemo[::-1] print(strReverse('pythontab.com')) 结果: moc

  • Python实现字符串的逆序 C++字符串逆序算法

    本文实例为大家分享了Python/C++实现字符串逆序的具体代码,供大家参考,具体内容如下 题目描述:将字符串逆序输出 Python实现一: 借助于列表的reverse()函数,需要注意的是,该函数没有返回值,只会让列表原地逆序 借助于"".join()函数,实现列表向字符串的转换 def strReverse(s): lst = list(s) lst.reverse() ans = "".join(list(lst)) return ans s = str(in

随机推荐