讲解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中实现的RC4算法
Feb 14 Python
用实例详解Python中的Django框架中prefetch_related()函数对数据库查询的优化
Apr 01 Python
Python3里的super()和__class__使用介绍
Apr 23 Python
详解用Python处理HTML转义字符的5种方式
Dec 27 Python
python笔记_将循环内容在一行输出的方法
Aug 08 Python
Python单元测试工具doctest和unittest使用解析
Sep 02 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 Python
numpy的Fancy Indexing和array比较详解
Jun 11 Python
一文带你掌握Pyecharts地理数据可视化的方法
Feb 06 Python
python中scipy.stats产生随机数实例讲解
Feb 19 Python
python爬取豆瓣电影TOP250数据
May 23 Python
如何判断pytorch是否支持GPU加速
Jun 01 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多线程下载远程多个文件
2013/06/25 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
codeigniter数据库操作函数汇总
2014/06/12 PHP
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
PHP正则匹配操作简单示例【preg_match_all应用】
2017/07/10 PHP
js验证表单大全
2006/11/25 Javascript
php对mongodb的扩展(小试牛刀)
2012/11/11 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
js数组循环遍历数组内所有元素的方法
2014/01/18 Javascript
JQuery Tips相关(1)----关于$.Ready()
2014/08/14 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
全面解析Bootstrap手风琴效果
2020/04/17 Javascript
Javascript实现Array和String互转换的方法
2015/12/21 Javascript
PassWord输入框代码分享
2016/06/07 Javascript
js操作DOM--添加、删除节点的简单实例
2016/07/08 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
jQuery动态生成不规则表格(前后端)
2017/02/21 Javascript
vue两个组件间值的传递或修改方式
2018/07/04 Javascript
详解Vue项目在其他电脑npm run dev运行报错的解决方法
2018/10/29 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
jQuery实现的卷帘门滑入滑出效果【案例】
2019/02/18 jQuery
微信小程序云开发之使用云存储
2019/05/17 Javascript
如何利用node.js开发一个生成逐帧动画的小工具
2019/12/01 Javascript
微信小程序点击按钮动态切换input的disabled禁用/启用状态功能
2020/03/07 Javascript
python抓取文件夹的所有文件
2018/02/27 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
Pycharm设置utf-8自动显示方法
2019/01/17 Python
检测tensorflow是否使用gpu进行计算的方式
2020/02/03 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
浅谈django框架集成swagger以及自定义参数问题
2020/07/07 Python
selenium携带cookies模拟登陆CSDN的实现
2021/01/19 Python
院领导写的就业推荐信
2014/03/09 职场文书
手机银行营销方案
2014/03/14 职场文书
合作意向书模板
2014/03/31 职场文书
关于CentOS 8 搭建MongoDB4.4分片集群的问题
2021/10/24 MongoDB