讲解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调用Delphi写的Dll代码示例
Dec 05 Python
python代码 输入数字使其反向输出的方法
Dec 22 Python
Python远程视频监控程序的实例代码
May 05 Python
Python程序包的构建和发布过程示例详解
Jun 09 Python
python plotly画柱状图代码实例
Dec 13 Python
Django项目使用ckeditor详解(不使用admin)
Dec 17 Python
利用OpenCV和Python实现查找图片差异
Dec 19 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
Python对称的二叉树多种思路实现方法
Feb 28 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
Feb 28 Python
Python面向对象魔法方法和单例模块代码实例
Mar 25 Python
python中复数的共轭复数知识点总结
Dec 06 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开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
2019/08/12 PHP
关于UTF-8的客户端用AJAX方式获取GB2312的服务器端乱码问题的解决办法
2010/11/30 Javascript
基于jquery的动态创建表格的插件
2011/04/05 Javascript
JavaScript 盒模型 尺寸深入理解
2012/12/31 Javascript
手机平板等移动端适配跳转URL的js代码
2014/01/25 Javascript
通过pjax实现无刷新翻页(兼容新版jquery)
2014/01/31 Javascript
JavaScript中的console.group()函数详细介绍
2014/12/29 Javascript
快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
2015/12/01 Javascript
nodeJS删除文件方法示例
2016/12/25 NodeJs
Javascript中的prototype与继承
2017/02/06 Javascript
Vue2.0+ElementUI实现表格翻页的实例
2017/10/23 Javascript
js判断数组是否包含某个字符串变量的实例
2017/11/24 Javascript
vue实现路由切换改变title功能
2019/05/28 Javascript
vue-cli —— 如何局部修改Element样式
2020/10/22 Javascript
[02:10]DOTA2亚洲邀请赛 EG战队出场宣传片
2015/02/07 DOTA
Python内置的字符串处理函数整理
2013/01/29 Python
使用python 和 lint 删除项目无用资源的方法
2017/12/20 Python
python 对多个csv文件分别进行处理的方法
2019/01/07 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
python3下载抖音视频的完整代码
2019/06/05 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
Python count函数使用方法实例解析
2020/03/23 Python
Django如何重置migration的几种情景
2021/02/24 Python
Why we need EJB
2016/10/20 面试题
Java Servlet API中forward() 与redirect()的区别
2014/04/20 面试题
学生会部长竞聘书
2014/03/31 职场文书
培训研修方案
2014/06/06 职场文书
2014乡镇机关党员个人对照检查材料思想汇报
2014/10/09 职场文书
股东授权委托书
2014/10/15 职场文书
涨价通知
2015/04/23 职场文书
盗窃案辩护词
2015/05/21 职场文书
2016猴年春节问候语
2015/11/11 职场文书
基于MySql验证的vsftpd虚拟用户
2021/11/07 MySQL
Python实现日志实时监测的示例详解
2022/04/06 Python