讲解Python实例练习逆序输出字符串


Posted in Python onMay 06, 2022

1. 问题描述

输入一个字符串然后对其进行逆序输出

  • 第一种方式:字符串切片
  • 第二种方式:使用循环转换然后逆序输出
  • 比如:输入字符串'hello',逆向输出'olleh'
  • 小伙伴们看了问题描述后,一定要自己先练习,再去看博主的代码和解题思路,才能提高自己的编程水平,全靠自觉哟!!!

2. 算法思路

1.使用循环从字符串的长度减一开始到0结束

2.每次的循环体内,将相应索引的字符添加进列表

3.完成所有的循环之后,将列表转换为字符串输出

讲解Python实例练习逆序输出字符串

3. 代码实现

第一种切片方式

实现代码?:

# Python3 range() 返回的是一个可迭代对象(类型是对象),而不是列表类型
# range(start, stop[, step])
# 参数说明:
# start:计数从start 开始。默认是从0开始。例如range (5) 等价于range (0,5) ;
# stop:计数到stop结束,但不包括stop。 例如: range (0,5) 是 [0, 1, 2, 3, 4]没有5
# step:步长,默认为1。例如: range (0, 5) 等价于 range(0, 5, 1)
# range(5, 0, -1): [5, 4, 3, 2, 1]
# 第一种切片方式
str_info = input("请输入字符串:")
print("逆序输出结果为:", str_info[::-1])

运行结果?:

讲解Python实例练习逆序输出字符串

第二种循环转换

实现代码?:

# Python3 range() 返回的是一个可迭代对象(类型是对象),而不是列表类型
# range(start, stop[, step])
# 参数说明:
# start:计数从start 开始。默认是从0开始。例如range (5) 等价于range (0,5) ;
# stop:计数到stop结束,但不包括stop。 例如: range (0,5) 是 [0, 1, 2, 3, 4]没有5
# step:步长,默认为1。例如: range (0, 5) 等价于 range(0, 5, 1)
# range(5, 0, -1): [5, 4, 3, 2, 1]
# 第二种循环转换
str_info = input("请输入字符串:")
str_list = []
for i in range(len(str_info) - 1, -1, -1):
    str_list.append(str_info[i])
print("str_list:", str_list)
print("逆序输出结果为:", ''.join(str_list))

代码解析:

  • range(len(str_info) - 1, -1, -1) :获取字符串索引下标
  • len(str_info) - 1:字符串最大索引位置,如hello就是取到4
  • 第1个-1:由于左闭右开,实际取值到0
  • 第2个-1:倒叙
  • ''.join(str_list):将字符串列表['o', 'l', 'l', 'e', 'h']转换为olleh字符串

运行结果:

讲解Python实例练习逆序输出字符串

到此这篇关于Python实例练习逆序输出字符串讲解的文章就介绍到这了!


Tags in this post...

Python 相关文章推荐
python通过get,post方式发送http请求和接收http响应的方法
May 26 Python
python抽取指定url页面的title方法
May 11 Python
修改默认的pip版本为对应python2.7的方法
Nov 06 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
浅析Python3中的对象垃圾收集机制
Jun 06 Python
在Python中构建增广矩阵的实现方法
Jul 01 Python
wxPython窗体拆分布局基础组件
Nov 19 Python
Python 面向对象之类class和对象基本用法示例
Feb 02 Python
python 画图 图例自由定义方式
Apr 17 Python
Python使用plt.boxplot() 参数绘制箱线图
Jun 04 Python
python删除指定列或多列单个或多个内容实例
Jun 28 Python
Elasticsearch 数据类型及管理
Apr 19 Python
python turtle绘图
May 04 #Python
python blinker 信号库
May 04 #Python
python三子棋游戏
May 04 #Python
python神经网络 使用Keras构建RNN训练
May 04 #Python
python神经网络学习 使用Keras进行回归运算
May 04 #Python
python神经网络学习 使用Keras进行简单分类
May 04 #Python
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
May 04 #Python
You might like
一段php加密解密的代码
2007/07/16 PHP
PHP实时显示输出
2008/10/02 PHP
基于PHP遍历数组的方法汇总分析
2013/06/08 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
php封装的单文件(图片)上传类完整实例
2016/10/18 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
js监听键盘事件示例代码
2013/07/26 Javascript
js简单实现删除记录时的提示效果
2013/12/05 Javascript
jquery插件推荐浏览器嗅探userAgent
2014/11/09 Javascript
JavaScript实现计算字符串中出现次数最多的字符和出现的次数
2015/03/12 Javascript
原生JS实现平滑回到顶部组件
2016/03/16 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
2017/03/10 Javascript
vue使用iframe嵌入网页的示例代码
2020/06/09 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
JavaScript实现拖拽效果
2020/03/16 Javascript
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
在Docker上开始部署Python应用的教程
2015/04/17 Python
Python中 Lambda表达式全面解析
2016/11/28 Python
linux环境下的python安装过程图解(含setuptools)
2017/11/22 Python
Python实现读取机器硬件信息的方法示例
2018/06/09 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
在Django的View中使用asyncio的方法
2019/07/12 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
2020/02/25 Python
Python解释器以及PyCharm的安装教程图文详解
2020/02/26 Python
python 异步async库的使用说明
2020/05/04 Python
Pytorch 使用CNN图像分类的实现
2020/06/16 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
探讨HTML5移动开发的几大特性(必看)
2015/12/30 HTML / CSS
史蒂夫·马登加拿大官网:Steve Madden加拿大
2017/11/18 全球购物
优秀共产党员事迹材料
2014/12/18 职场文书
人民币符号
2022/02/17 杂记