讲解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 ljust rjust center输出
Sep 06 Python
python设置检查点简单实现代码
Jul 01 Python
详解Python中的type()方法的使用
May 21 Python
python字符串string的内置方法实例详解
May 14 Python
Python3实现转换Image图片格式
Jun 21 Python
Python 利用scrapy爬虫通过短短50行代码下载整站短视频
Oct 29 Python
Python利用sqlacodegen自动生成ORM实体类示例
Jun 04 Python
python tkinter基本属性详解
Sep 16 Python
为什么说Python可以实现所有的算法
Oct 04 Python
如何在sublime编辑器中安装python
May 20 Python
一些让Python代码简洁的实用技巧总结
Aug 23 Python
Python使用pandas导入xlsx格式的excel文件内容操作代码
Dec 24 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
图书管理程序(三)
2006/10/09 PHP
php 代码优化的42条建议 推荐
2009/09/25 PHP
php中使用session防止用户非法登录后台的方法
2015/01/27 PHP
Zend Framework框架路由机制代码分析
2016/03/22 PHP
PHP实现上传多文件示例代码
2017/02/20 PHP
Javascript hasOwnProperty 方法 & in 关键字
2008/11/26 Javascript
JavaScript中实现最高效的数组乱序方法
2014/10/11 Javascript
Javascript中的apply()方法浅析
2015/03/15 Javascript
jquery实现未经美化的简洁TAB菜单效果
2015/08/28 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
JS添加删除DIV的简单实例
2016/07/08 Javascript
jQuery实现的导航下拉菜单效果示例
2016/09/05 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
vue移动端裁剪图片结合插件Cropper的使用实例代码
2017/07/10 Javascript
React/Redux应用使用Async/Await的方法
2017/11/16 Javascript
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
完美解决linux下node.js全局模块找不到的情况
2018/05/16 Javascript
ng-zorro-antd 入门初体验
2018/12/03 Javascript
跟混乱的页面弹窗说再见
2019/04/11 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
微信小程序 导入图标实现过程详解
2019/10/11 Javascript
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
用python读写excel的方法
2014/11/18 Python
解决Python字典写入文件出行首行有空格的问题
2017/09/27 Python
Pandas 数据处理,数据清洗详解
2018/07/10 Python
python正则表达式的懒惰匹配和贪婪匹配说明
2020/07/13 Python
Python tkinter之Bind(绑定事件)的使用示例
2021/02/05 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
英格兰橄榄球商店:England Rugby Store
2016/12/17 全球购物
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
大学生大二自我鉴定
2013/10/28 职场文书
市场开发计划书
2014/05/07 职场文书
阿里云Nginx配置https实现域名访问项目(图文教程)
2021/03/31 Servers
十大动画制作软件,Adobe产品上榜两款,第一是行业标准软件
2022/03/18 杂记
SQL Server中搜索特定的对象
2022/05/25 SQL Server
SpringBoot深入分析讲解监听器模式下
2022/07/15 Java/Android