python字符串反转,python如何对字符串进行反转
在做代码如下的试题中,做到反转整数,就涉及到字符串反转,为了尽可能可以写出更多的方法,于是写下这篇文章
样例:如a=123456789 反转成a=987654321
第一种方法:使用字符串切片
a= 123456789 a=a[:-1] 987654321 第二种方法:使用reversed() 可读行好,但速度较慢
.加入(反转( 123456789 ) 987654321 封装使用
def reversed _ string(a _ string):return _ string[:-1]reversed _ string( 123456789 ) 123456789 注意:
大蟒的潜艇用热中子反应堆(海底热反应堆的缩写)对象中没有内置的反转函数
大蟒字符串相关基础知识:
大蟒中,字符换是不可变,更改字符串不会修改字符串,而是创建一个新的字符串。
字符串是可切片,切片字符串会以给定的增量从字符串中的一个点(向后或向前)向另一个点提供一个新字符串。它们在下标中采用切片表示法或切片对象:
#下标通过在大括号中包含冒号来创建切片:字符串[开始:停止:步进]#要在大括号外创建切片,您需要创建切片对slice_obj=slice(开始、停止、步进)string[slice_obj]第三种方法:循环从字符串提取数据,然后进行字符串拼接(慢)
defreverse _ a _ string _ slowly(a _ string):new _ string= index=len(a _ string)while index:index-=1 # index=index-1 new _ string=a _ string[index]# new _ string=new _ string character返回new _ string第四种方法:循环从字符串提取数据,写入到一个空列表中,然后使用join进行字符串拼接(慢)
defreverse _ a _ string _ more _ slowly(a _ string):new _ string=[]index=len(a _ string)while index:index-=1 new _ string。append(a _ string[索引])返回""。加入(新字符串)第五种方法:使用字符串拼接(慢)
def string _ reverse(a _ string):n=len(a _ string)x= for iinrange(n-1,-1,-1):x=test[i]returnx第六种方法:使用reduce
reduce(lambdax,y:y x,a_string)第七种方法:使用递归(慢)
def rev _ string(s):iflen(s)==1:returns returns[-1]rev _ string(s[:-1])第八种方法:使用list()和reverser()配合
a _ string= 123456789 defrev _ string(a _ string):l=list(a)l . reverse()return .加入第九种方法:使用栈
defrev _ string(a _ string):l=list(a _ string)#模拟全部入栈new _ string= while len(l)0:new _ string=l . pop()#模拟出栈returnnew_string参考文章:在计算机编程语言中反转字符串
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。