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


Posted in Python onApril 26, 2018

对于一个给定的字符串,逆序输出,这个任务对于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']

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

Python 相关文章推荐
讲解Python中的标识运算符
May 14 Python
python生成随机图形验证码详解
Nov 08 Python
使用PyInstaller将python转成可执行文件exe笔记
May 26 Python
python中int与str互转方法
Jul 02 Python
python requests爬取高德地图数据的实例
Nov 10 Python
Python设计模式之迭代器模式原理与用法实例分析
Jan 10 Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 Python
Python函数中的可变长参数详解
Sep 12 Python
python config文件的读写操作示例
Sep 27 Python
pygame实现俄罗斯方块游戏(基础篇2)
Oct 29 Python
python实现简单的tcp 文件下载
Sep 16 Python
Python批量删除mysql中千万级大量数据的脚本分享
Dec 03 Python
Python实现字符串的逆序 C++字符串逆序算法
May 28 #Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 #Python
TensorFlow损失函数专题详解
Apr 26 #Python
浅谈Tensorflow模型的保存与恢复加载
Apr 26 #Python
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
Apr 26 #Python
Python实现的计算器功能示例
Apr 26 #Python
python email smtplib模块发送邮件代码实例
Apr 26 #Python
You might like
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
Yii使用find findAll查找出指定字段的实现方法
2014/09/05 PHP
解析WordPress中函数钩子hook的作用及基本用法
2015/12/22 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
PHP实现的自定义图像居中裁剪函数示例【测试可用】
2017/08/11 PHP
PHP实现的最大正向匹配算法示例
2017/12/19 PHP
jquery tools之tabs 选项卡/页签
2009/07/25 Javascript
上传的js验证(图片/文件的扩展名)
2013/04/25 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
JavaScript中九种常用排序算法
2014/09/02 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
js鼠标移动时禁止选中文字
2017/02/19 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
Node.js成为Web应用开发最佳选择的原因
2018/02/05 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
vue.js数据绑定操作详解
2018/04/23 Javascript
解决python爬虫中有中文的url问题
2018/05/11 Python
删除python pandas.DataFrame 的多重index实例
2018/06/08 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
2018/08/02 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
python列表返回重复数据的下标
2020/02/10 Python
python 解决selenium 中的 .clear()方法失效问题
2020/09/01 Python
Python基于Serializer实现字段验证及序列化
2020/11/04 Python
实习单位推荐信范文
2013/11/27 职场文书
老公给老婆的保证书
2014/04/28 职场文书
二手房购房协议书范本
2014/10/05 职场文书
2015年艾滋病宣传活动总结
2015/03/27 职场文书
2015新教师教学工作总结
2015/07/22 职场文书
上级领导检查欢迎词
2015/09/30 职场文书
《观潮》教学反思
2016/02/17 职场文书
导游词之日本富士山
2020/01/06 职场文书
python学习之panda数据分析核心支持库
2021/05/07 Python
python模板入门教程之flask Jinja
2022/04/11 Python