讲解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中__init__()方法的高级应用
May 11 Python
Python中字典映射类型的学习教程
Aug 20 Python
Python机器学习之决策树算法
Dec 22 Python
怎么使用pipenv管理你的python项目
Mar 12 Python
详解配置Django的Celery异步之路踩坑
Nov 25 Python
python 使用socket传输图片视频等文件的实现方式
Aug 07 Python
Django之路由层的实现
Sep 09 Python
python连接、操作mongodb数据库的方法实例详解
Sep 11 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
Dec 19 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
Oct 15 Python
Python eval函数原理及用法解析
Nov 14 Python
Python实现双向链表
May 25 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操作符与控制结构代码
2011/12/30 PHP
php curl选项列表(超详细)
2013/07/01 PHP
php数组合并与拆分实例分析
2015/06/12 PHP
nginx下安装php7+php5
2016/07/31 PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
2018/10/14 PHP
thinkphp5.1框架中容器(Container)和门面(Facade)的实现方法分析
2019/08/05 PHP
PHP 多进程与信号中断实现多任务常驻内存管理实例方法
2019/10/04 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
初识JQuery 实例一(first)
2011/03/16 Javascript
浅析return false的正确使用
2013/11/04 Javascript
js 立即调用的函数表达式如何写
2014/01/12 Javascript
jQuery仿天猫实现超炫的加入购物车
2015/05/04 Javascript
javascript中indexOf技术详解
2015/05/07 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
JavaScript学习笔记之DOM基础 2.4
2015/08/14 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
2016/06/16 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
使用vue根据状态添加列表数据和删除列表数据的实例
2018/09/29 Javascript
微信小程序实现点赞、取消点赞功能
2018/11/02 Javascript
webpack的 rquire.context用法实现工程自动化的方法
2020/02/07 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
使用Python求解最大公约数的实现方法
2015/08/20 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
2020/02/07 Python
Python map及filter函数使用方法解析
2020/08/06 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
澳大利亚首屈一指的在线购物目的地:Kogan.com
2017/02/02 全球购物
材料员岗位职责
2014/03/13 职场文书
工程力学专业自荐信范文
2014/03/17 职场文书
函授本科个人自我鉴定
2014/03/25 职场文书
营销部内勤岗位职责
2014/04/30 职场文书
工商管理专业毕业生求职信
2014/05/26 职场文书
二十年同学聚会致辞
2015/07/28 职场文书