python3反转字符串的3种方法(小结)


Posted in Python onNovember 07, 2019

前段时间看到letcode上的元音字母字符串反转的题目,今天来研究一下字符串反转的内容。主要有三种方法:

1.切片法(最简洁的一种)

#切片法
def reverse1():
  s=input("请输入需要反转的内容:")
  return s[::-1]
reverse1()

#运行结果
In [23]: def reverse1():
  ...: s=input("请输入需要反转的内容:")
  ...: return s[::-1]
  ...: 
  ...: reverse1()

请输入需要反转的内容:你是一个小南瓜
Out[23]: '瓜南小个一是你'

原理是:This is extended slice syntax. It works by doing [begin: end:step] - by leaving begin and end off and specifying a step of -1, it reverses a string.

2.递归

#递归反转
def reverse2(s):
  if s=="":
    return s
  else:
    return reverse2(s[1:])+s[0]
reverse2("sidfmawsmdisd是当面问")

#运行结果
In [24]: def reverse2(s):
  ...: if s=="":
  ...: return s
  ...: else:
  ...: return reverse2(s[1:])+s[0]
  ...: 
  ...: reverse2("sidfmawsmdisd是当面问")
Out[24]: '问面当是dsidmswamfdis'

3.借用列表,使用reverse()方法

Python中自带reverse()函数,可以处理列表的反转,来看示例:

In [25]: l=['a', 'b', 'c', 'd']
  ...: l.reverse()
  ...: print (l)
['d', 'c', 'b', 'a']

reverse()函数将列表的内容进行了反转,借助这个特性,可以先将字符串转换成列表,利用reverse()函数进行反转后,再处理成字符串。

#借用列表,使用reverse()方法
def reverse3(s):
  l=list(s)
  l.reverse()
  print("".join(l))
reverse3("soifmi34pomOsprey,,是")

#运行结果
In [26]: def reverse3(s):
  ...: l=list(s)
  ...: l.reverse()
  ...: print("".join(l))
  ...: 
  ...: reverse3("soifmi34pomOsprey,,是")
  ...:

是,,yerpsOmop43imfios

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

Python 相关文章推荐
Python中遍历字典过程中更改元素导致异常的解决方法
May 12 Python
深入理解python中的浅拷贝和深拷贝
May 30 Python
Python函数的周期性执行实现方法
Aug 13 Python
情人节快乐! python绘制漂亮玫瑰
Aug 18 Python
Django 开发环境配置过程详解
Jul 18 Python
详细介绍Python进度条tqdm的使用
Jul 31 Python
python用requests实现http请求代码实例
Oct 31 Python
Tensorflow设置显存自适应,显存比例的操作
Feb 03 Python
python读取与处理netcdf数据方式
Feb 14 Python
python编写俄罗斯方块
Mar 13 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
Mar 31 Python
python利用后缀表达式实现计算器功能
Feb 22 Python
Python中__repr__和__str__区别详解
Nov 07 #Python
Python通过Manager方式实现多个无关联进程共享数据的实现
Nov 07 #Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
Nov 07 #Python
Python中xml和dict格式转换的示例代码
Nov 07 #Python
python对象转字典的两种实现方式示例
Nov 07 #Python
python多线程高级锁condition简单用法示例
Nov 07 #Python
python文件操作的简单方法总结
Nov 07 #Python
You might like
PHP获取指定月份第一天和最后一天的方法
2015/07/18 PHP
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
CI(CodeIgniter)模型用法实例分析
2016/01/20 PHP
List Information About the Binary Files Used by an Application
2007/06/18 Javascript
javascript实现动态侧边栏代码
2014/02/19 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
JS判断form内所有表单是否为空的简单实例
2016/09/09 Javascript
聊一聊JS中的prototype
2016/09/29 Javascript
AngularJs篇:使用AngularJs打造一个简易权限系统的实现代码
2016/12/26 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
nodejs+express搭建多人聊天室步骤
2018/02/12 NodeJs
vue中简单弹框dialog的实现方法
2018/02/26 Javascript
vue实现个人信息查看和密码修改功能
2018/05/06 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
angular异步验证防抖踩坑实录
2019/12/01 Javascript
TensorFlow.js 微信小程序插件开始支持模型缓存的方法
2020/02/21 Javascript
vue 解决无法对未定义的值,空值或基元值设置反应属性报错问题
2020/07/31 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
go和python调用其它程序并得到程序输出
2014/02/10 Python
Python实例之wxpython中Frame使用方法
2014/06/09 Python
在Python中操作时间之tzset()方法的使用教程
2015/05/22 Python
Django的URLconf中使用缺省视图参数的方法
2015/07/18 Python
python批量查询、汉字去重处理CSV文件
2018/05/31 Python
房地产还款计划书
2014/01/10 职场文书
单位未婚证明范本
2014/01/18 职场文书
更夫岗位责任制
2014/02/11 职场文书
2015年挂职干部工作总结
2015/05/14 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书
《作风建设永远在路上》心得体会
2016/01/21 职场文书
2016年大学生社区服务活动总结
2016/04/06 职场文书
vue2实现provide inject传递响应式
2021/05/21 Vue.js
Python实现聚类K-means算法详解
2022/07/15 Python
MySQL中的 inner join 和 left join的区别解析(小结果集驱动大结果集)
2023/05/08 MySQL