Python实现字符串反转的常用方法分析【4种方法】


Posted in Python onSeptember 30, 2017

本文实例讲述了Python实现字符串反转的常用方法。分享给大家供大家参考,具体如下:

下面是实现python字符串反转的四种方法:

1. 切片

def rev(s):
return s[::-1]

这是采用切片的方法,设置步长为-1,也就是反过来排序。

这种方法是最简洁的,也是最推荐的。

2. 这种方法与切片类似,不过比较麻烦

def rev(s):
str0 = ''
  l = len(s)-1
  while l >= 0:
    str0 += s[l]
    l -= 1
  return str0

这种方法是先设置一个str0的空变量,然后在s中从后往前取值,然后追加到str0中。

3. 列表

def rev(s):
a = list(s)
  a.reverse()
  return ''.join(a)

这种方法是采用列表的reverse方法,先将s转换为列表,然后通过reverse方法反转,然后在通过join连接为字符串。

注意:这里注意区分列表的reverse和sort(或sorted)方法:

reverse是把列表方向排序;

sort(reverse=True)是按照某种顺序方向排序。

example:

>>> a=['a','c','b','d']
>>> b=['a','c','b','d']
>>> a.sort(reverse=True)
>>> b.reverse()
>>> a
['d', 'c', 'b', 'a']
>>> b
['d', 'b', 'c', 'a']

4. reduce

def rev(s):
return reduce(lambda x, y : y + x, s)

更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python魔术方法详解
Feb 14 Python
浅谈Python中的闭包
Jul 08 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
Aug 16 Python
Python编程中time模块的一些关键用法解析
Jan 19 Python
python机器学习之决策树分类详解
Dec 20 Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 Python
flask框架蓝图和子域名配置详解
Jan 25 Python
Python sql注入 过滤字符串的非法字符实例
Apr 03 Python
Python ckeditor富文本编辑器代码实例解析
Jun 22 Python
简单了解Python字典copy与赋值的区别
Sep 16 Python
Django数据库迁移常见使用方法
Nov 12 Python
python模拟浏览器 使用selenium进入好友QQ空间并留言
Apr 12 Python
Python实现利用最大公约数求三个正整数的最小公倍数示例
Sep 30 #Python
Python基于pygame模块播放MP3的方法示例
Sep 30 #Python
Python实现自动为照片添加日期并分类的方法
Sep 30 #Python
Python实现获取照片拍摄日期并重命名的方法
Sep 30 #Python
Python3利用SMTP协议发送E-mail电子邮件的方法
Sep 30 #Python
Python字符编码与函数的基本使用方法
Sep 30 #Python
详谈Python高阶函数与函数装饰器(推荐)
Sep 30 #Python
You might like
PHP提取数据库内容中的图片地址并循环输出
2010/03/21 PHP
下拉列表多级联动dropDownList示例代码
2013/06/27 PHP
YII使用url组件美化管理的方法
2015/12/28 PHP
PHP大文件分块上传功能实例详解
2019/07/22 PHP
PHP字符串和十六进制如何实现互相转换
2020/07/16 PHP
jQuery根据纬度经度查看地图处理程序
2013/05/08 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
jquery拖拽排序简单实现方法(效果增强版)
2016/02/16 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
全面解析Bootstrap中Carousel轮播的使用方法
2016/06/13 Javascript
Node.js使用NodeMailer发送邮件实例代码
2017/03/06 Javascript
详谈jQuery.load()和Jsp的include的区别
2017/04/12 jQuery
在vue项目中使用md5加密的方法
2018/09/14 Javascript
详解Js里的for…in和for…of的用法
2019/03/28 Javascript
TypeScript的安装、使用、自动编译的实现
2020/04/10 Javascript
Vue中使用wangeditor富文本编辑的问题
2021/02/07 Vue.js
详解vite2.0配置学习(typescript版本)
2021/02/25 Javascript
[01:01:04]2018DOTA2亚洲邀请赛 4.5 淘汰赛 OpTic vs TNC 第一场
2018/04/06 DOTA
[01:01:41]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第二场 1月31日
2021/03/11 DOTA
python 将print输出的内容保存到txt文件中
2018/07/17 Python
python 返回列表中某个值的索引方法
2018/11/07 Python
对Python中的条件判断、循环以及循环的终止方法详解
2019/02/08 Python
Python如何读写二进制数组数据
2020/08/01 Python
详解python命令提示符窗口下如何运行python脚本
2020/09/11 Python
python判断元素是否存在的实例方法
2020/09/24 Python
快速实现一个简单的canvas迷宫游戏的示例
2018/07/04 HTML / CSS
英国最大最好的无人机商店:Drones Direct
2019/07/12 全球购物
.NET里面什么时候需要调用垃圾回收
2015/06/01 面试题
教学大赛获奖感言
2014/01/15 职场文书
小学教师寄语大全
2014/04/03 职场文书
2015年班组建设工作总结
2015/05/13 职场文书
《角的度量》教学反思
2016/02/18 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL
MySQL图形化管理工具Navicat安装步骤
2021/12/04 MySQL
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js