为了账号安全,请及时绑定邮箱和手机立即绑定

python对指定字符串逆序的6种方法

标签:
Python

对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法


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

12345#!usr/bin/env python  # encoding:utf-8  def strReverse(strDemo):   return strDemo[::-1print(strReverse('pythontab.com'))


结果:

1moc.batnohtyp


方法二:遍历构造列表法

循环遍历字符串, 构造列表,从后往前添加元素, 最后把列表变为字符串

12345678#!usr/bin/env python  # encoding:utf-8  def strReverse(strDemo):    strList=[]    for in range(len(strDemo)-1-1-1):      strList.append(strDemo[i])   return ''.join(strList) print(strReverse('pythontab.com'))

结果:

1moc.batnohtyp


方法三:使用reverse函数

将字符串转换为列表使用reverse函数

1234567#!usr/bin/env python  # encoding:utf-8  def strReverse(strDemo):    strList = list(strDemo)    strList.reverse()    return ''.join(strList) print(strReverse('pythontab.com'))


结果:

1moc.batnohtyp


方法四:借助collections模块方法extendleft

12345678910#!usr/bin/env python  # encoding:utf-8  import collections  def strReverse(strDemo):    deque1=collections.deque(strDemo)    deque2=collections.deque()    for tmpChar in deque1:      deque2.extendleft(tmpChar)    return ''.join(deque2)  print(strReverse('pythontab.com'))


结果:

1moc.batnohtyp


方法五:递归实现

1234567#!usr/bin/env python  # encoding:utf-8  def strReverse(strDemo):    if len(strDemo)<=1    return strDemo    return strDemo[-1]+strReverse(strDemo[:-1])  print(strReverse('pythontab.com'))


结果:

1moc.batnohtyp


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

1234567891011121314#!usr/bin/env python  #encoding:utf-8     def strReverse(strDemo):    strList=list(strDemo)    if len(strList)==0 or len(strList)==1    return strList    i=0   length=len(strList)    while i < length/2    strList[i], strList[length-i-1]=strList[length-i-1], strList[i]      i+=1  return ''.join(strList) print(strReverse('pythontab.com'))


结果:

1moc.batnohtyp

原文来源:https://www.pythontab.com/html/2018/pythonjichu_0426/1283.html


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消