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


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

    方法一:直接使用字符串切片功能逆转字符串
    #!usr/bin/env python

    encoding:utf-8

    def strReverse(strDemo):
    return strDemo[::-1]
    print(strReverse(‘pythontab.com’))

    结果:

    moc.batnohtyp

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

    #!usr/bin/env python

    encoding:utf-8

    def strReverse(strDemo):
    strList=[]
    for i in range(len(strDemo)-1, -1, -1):
    strList.append(strDemo[i])
    return ‘’.join(strList)
    print(strReverse(‘pythontab.com’))
    结果:

    moc.batnohtyp

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

    #!usr/bin/env python

    encoding:utf-8

    def strReverse(strDemo):
    strList = list(strDemo)
    strList.reverse()
    return ‘’.join(strList)
    print(strReverse(‘pythontab.com’))

    结果:

    moc.batnohtyp

    方法四:借助collections模块方法extendleft
    #!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’))

    结果:

    moc.batnohtyp

    方法五:递归实现
    #!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’))

    结果:

    moc.batnohtyp

    方法六:借助基本的Swap操作,以中间为基准交换对称位置的字符
    #!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’))

    结果:

    moc.batnohtyp

    来源:https://www.weidianyuedu.com

  • 相关阅读:
    Django模板层
    Python + Django4 搭建个人博客(六): 数据库表和模型设计
    Mac安装redis
    组态软件和人机界面与plc之间Profinet无线通讯
    渗透测试-域环境下的信息收集
    科技资讯|苹果Vision Pro头显申请游戏手柄专利和商标
    面向对象之设计原则与设计模式
    【kubernetes】kubernetes二次开发
    python提取特定格式的数据
    空间数据索引的利器:R-Tree原理与实现深度解析
  • 原文地址:https://blog.csdn.net/hdxx2022/article/details/127964099