参考:https://www.cnblogs.com/jasmine0627/p/9510296.html

  将字符串s="helloworld"反转为‘dlrowolleh’

  fanzhuan.py

s='helloworld'
#1切片法最常用
r=s[::-1]
print('切片法',r) #2使用reduce
from functools import reduce
#匿名函数,冒号前面为参数,冒号后为返回结果
#第一步x='h',y='e'返回字符串'eh'把这个结果作为新的参数x='eh' y='l' 结果为leh依次类推就把字符串反转了
r=reduce(lambda x,y:y+x,s)
print('reduce函数',r) #3使用递归函数
def func(s):
if len(s)<1:
return s
return func(s[1:])+s[0] r=func(s)
print('递归函数法',r) #4使用栈
def func(s):
l=list(s)
result=''
#把字符串转换成列表pop()方法删除最后一个元素并把该元素作为返回值
while len(l):
result=result+l.pop()
return result r=func(s)
print('使用栈法',r) #5for循环
def func(s):
result=''
max_index=len(s)
#for循环通过下标从最后依次返回元素
for index in range(0,max_index):
result=result+s[max_index-index-1]
return result r=func(s)
print('使用for循环法',r) #6使用列表reverse法
l=list(s)
#reverse方法把列表反向排列
l.reverse()
#join方法把列表组合成字符串
r="".join(l)
print('使用列表reverse法',r)

  输出

切片法 dlrowolleh
reduce函数 dlrowolleh
递归函数法 dlrowolleh
使用栈法 dlrowolleh
使用for循环法 dlrowolleh
使用列表reverse法 dlrowolleh

  

Python3之实现字符反转的更多相关文章

  1. python3随记——字符编码

    1.1什么是字节 字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,也表示一些计算机编程语言中的数据类型和语言字符. 比特(bit)在计算机中最小的单位,在二进制位的电脑的系统中,每一b ...

  2. Java 对字符反转操作。

    //把一段字符串反转后大小写互换位置 public class test_demo { public static void main(String[] args)throws Exception { ...

  3. session安全&&CBC字符反转攻击&&hash拓展攻击

    session安全 p神写的: 在传统PHP开发中,$_SESSION变量的内容默认会被保存在服务端的一个文件中,通过一个叫"PHPSESSID"的Cookie来区分用户.这类se ...

  4. Python3 图片转字符画

    https://www.shiyanlou.com/courses/370/labs/1191/document from PIL import Image import argparse ascii ...

  5. Python3基础 list reverse 反转列表

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  6. native2ascii.exe 字符转码与反转码

    本人最近在做OAF的二次开发,在看别人写的代码时,发现总有类似这样的语句:”\u65e0\u6548\u7684GP\u9879\u76ee\u7f16\u53f7“,这些语句其实是用Java_hom ...

  7. day008 字符编码之 字符编码 、Python2和Python3字符编码的区别

    计算机基础(掌握) 启动应用程序的流程 双击qq 操作系统接受指令然后把该操作转化为0和1发送给CPU CPU接受指令然后把指令发送给内存 内存接受指令把指令发送给硬盘获取数据 qq在内存中运行 文本 ...

  8. LeetCode 557:反转字符串中的单词 III Reverse Words in a String III

    公众号:爱写bug(ID:icodebugs) 给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序. Given a string, you need to reve ...

  9. java:StringBuffer字符处理对象

    1.添加字符 public class StringBufferDemo { public static void main(String args[]) { StringBuffer sbf = n ...

随机推荐

  1. Oracle-查看sql运行状况

    查看占io较大的正在运行的session SELECT se.sid, se.serial#, pr.SPID, se.username, se.status, se.terminal, se.pro ...

  2. 洛谷P2577 午餐【贪心】【线性dp】

    题目:https://www.luogu.org/problemnew/show/P2577 题意:n个人每个人有一个打饭时间和吃饭时间,将他们分成两个队伍.每个人打到饭之后就马上去吃饭.问怎么安排可 ...

  3. c++ 智能指针的使用

    https://www.cnblogs.com/TenosDoIt/p/3456704.html #include <QCoreApplication> #include <stri ...

  4. POJ-2115-C Looooops(线性同余方程)

    链接: https://vjudge.net/problem/POJ-2115 题意: A Compiler Mystery: We are given a C-language style for ...

  5. 001_matlab_变量打印

    MATLAB输出变量方法很多,主要包括以下几类.(1)语句后面不加分号“;”,这是直接输出数值的比较简单的方法.(2)disp(a)直接在命令窗口显示a变量,这种方法输出和第一种差不多.(3)fpri ...

  6. hbase的region

    一.Region 概念 Region是表获取和分布的基本元素,由每个列族的一个Store组成.对象层级图如下: Table (HBase table) Region (Regions for the ...

  7. The 2019 ICPC China Nanchang National Invitational and International Silk-Road Programming Contest

    目录 Contest Info Solutions A. Attack B. Polynomial E. Interesting Trip F. Sequence G. Winner H. Anoth ...

  8. 视觉SLAM十四讲(三)——三维空间刚体运动(下)

    理论部分请看 :三维空间刚体运动 一.Eigen的使用 首先安装 Eigen: sudo apt-get install libeigen3-dev 一般都安装在 /usr/include/eigen ...

  9. Codeforces Round #563 (Div. 2)/CF1174

    Codeforces Round #563 (Div. 2)/CF1174 CF1174A Ehab Fails to Be Thanos 其实就是要\(\sum\limits_{i=1}^n a_i ...

  10. Visual Studio2019安装步骤

    学校使用的版本是2012版本,而现在讲的版本是2019版本,差别不大,个人认为2019更能胜任学习任务. 另外VS2019是完全免费的,版本越高越好了!毕竟C++都出了C++20对吧. Step 1: ...