用python将字符串进行反转,python如何反转字符串
最近身边有个朋友,因为受不了年薪30W的诱惑,立志成为程序员。自学编程一个月后,我装成学弟,自信地和应届毕业生一起参加了校招。然而,十几次面试下来,都是心灰意冷。
这哥们面试受挫,就来找我诉苦:“面试题好变态。比如有个公司,让我用五种编程方法实现字符串反转,我整个面试都是在绝望中度过的!”
啧啧~这明显不够扎实!只有五种方式,那就得心应手了!开始我的表演吧!~
更多Python视频、源代码和资料可免费获取,电话:531509025。
方法一:反转列表法
在Python中,列表可以颠倒。我们只需要把字符串转换成列表,用reverse()方法,把它们反转,然后用string的join()方法遍历列表,合并成一个字符串。
方法二:循环反向迭代法
字符串是一种序列。我们可以通过使用for来循环遍历字符串,然后,不断地反向赋值给变量B,最后输出变量B,这样就完成了字符串的求逆。
方法三:反向循环迭代法
字符串本身可以切片,当然步长可以设置为-1来逆序。然后,遍历并迭代变量B,同样可以达到相反的效果。逻辑与第二种方法相同。
方法四:倒序切片法
方法2和3的终极版本,直接反过来,一步就可以实现。
方法五:遍历索引法
作为一个序列,字符串可以被索引。我们首先遍历索引数字,然后按逆序提取字母,再合并成字符串。
方法六:列表弹出法
列表有一个弹出方法pop(),弹出其中一个元素,默认为最后一个元素。我们设置变量B,然后不断弹出字符串的最后一个字符,加到变量B上,最后反转字符串。
cjdgz:列表解析式法
方法3的简单编写,使用列表解析表达式,简化了代码编写。最后,通过join()方法,合并后的字符串被反转。
方法八:反向遍历索引法
range()函数有三个参数:start、end、step,左闭右开。我们从最后一个索引开始,结束第一个索引,反向遍历索引,然后反向提取字符串,最后合并。是方法五的逆向思维。
ggdxy:累积相加法
使用python中的reduce()函数。首先创建一个字符串逆序加法函数和字符串,一起传入reduce函数。运行后,可以逆序添加字符串,最后反转字符串。
方法十:匿名函数法
ggdxy的高级版本,它使用lambda匿名函数创建一个逆序的字符串加法函数,然后累加得到字符串求逆结果。
方法十一:列表倒序法
使用列表中的sort(reverse=True)方法以逆序排序。然而,这种方法有一个缺点。它不是按照字符串的升序或降序排序,而是按照26个英文字母排序。因此,如果字符串没有从小到大排序,运行后排序就会出错。
方法十二:双向队列排序法
使用双向队列进行操作。解释双向队列,这是一种数据结构,但它可以很容易地添加和删除序列两侧的元素。我们遍历字符串,将其添加到双向队列的左侧,最后用join()方法将其合并以反转字符串。
方法十三:双向队列反转法:
使用同一个双向队列,将字符串转换为列表并添加到队列中,然后整体反转,最后合并导出。
方法十四:一维数组索引法
利用熊猫的一维数组结构,逆序遍历,反串。
方法十五:函数递归法
利用递归的思想,建立函数,逆序添加字符串,直到字符串长度小于或等于1。
方法十六:对称交换法
这是最迷人的方法~大致思路是遍历字符串前半部分的元素,然后与后半部分对称位置的元素互换,实现字符串反转。过程很有逻辑~
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。