python入门经典27版_【python】编程语言入门经典100例--27
【python】编程语言入门经典100例--27
发布时间:2020-02-27 20:35:50
来源:51CTO
阅读:520
作者:snc_snc
1 #题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
代码:
2
3 li = list(input('请输入5个字符:'))
4 n = len(li)
5 i = 0
6
7 def order(li,n,i):
8 if i <= n-1-i:
9 tmp = li[i]
10 li[i] = li[n-1-i]
11 li[n-1-i] = tmp
12 i += 1
13 order(li,n,i)
14 return(li)
15
16 print(order(li,n,i))
运行结果:
[root@HK code_100]# python code_27.py
请输入5个字符:abcdefghi123456768
['8', '6', '7', '6', '5', '4', '3', '2', '1', 'i', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a']
[root@HK code_100]# python code_27.py
请输入5个字符:abcde
['e', 'd', 'c', 'b', 'a']
[root@HK code_100]#
代码解释:
#思路:遍历经过输入转换后的列表li,通过三方参数赋值,将第一个和最后一个元素交换位置,然后递归新的列表,
# 将新列表的第二个元素和倒数第二个元素交换位置,以此类推,全部交换完之后,列表就会做到反转
2
3 li = list(input('请输入5个字符:')) #接收输入的5个字符,并且转换成列表
4 n = len(li) #计算列表长度,以便后面使用
5 i = 0 #定义参数i为从0开始
6
7 def order(li,n,i): #定义函数order,传入三个参数,li列表,列表长度,列表下标
8 if i <= n-1-i: #条件判断列表正数元素小于或者等于列表倒数元素,防止重复交换位置,因为是小于或者等于, 所有列表个数是单数还是双数都不受影响
9 tmp = li[i] #从这往后三条是通过三方参数tmp交换两个数值
10 li[i] = li[n-1-i]
11 li[n-1-i] = tmp
12 i += 1 #正数元素下标依次累加
13 order(li,n,i) #将之前交换完元素的的列表递归到这个函数,传入新的参数,继续计算,一直到所有元素都有交换
14 return(li) #全部交换完之后返回新的列表
15
16 print(order(li,n,i)) #打印结果
python入门经典27版_【python】编程语言入门经典100例--27相关推荐
- 可爱的Python(哲思社区.插图版_文字版).pdf 下载地址
下载地址: 可爱的Python(哲思社区.插图版_文字版).pdf 资源来自网络,如有侵权,请联系删除!
- python编程第5版_正版 Python学习手册(原书第5版) python编程从入门到精通 python入门 计算机网络...
上册 前言1 部分使用入门 章问答环节21 人们为何使用Python21 软件质量22 开发者效率23 Python是一门"脚本语言"吗23 好吧,Python的缺点是什么25 如 ...
- python入门教程傻瓜版_毫无基础的人如何入门 Python ?Python入门教程拿走不谢啦!...
随着人工智能的发展,Python近两年也是大火,越来越多的人加入到Python学习大军,对于毫无基础的人该如何入门Python呢?这里整理了一些个人经验和Python入门教程供大家参考. 如果你是零基 ...
- python编程第四版_清华编程教授强力推荐《Python编程》,指导你如何学习python
Python编程真的那么容易吗?仅仅是看理论就可以学以致用吗? 今天我给你介绍的这本书,也许会让你开始改变这种想法,因为这本书上的练习和案例以及指导本身就足够学好Python了. 清华编程教授强力推荐 ...
- python 的库如何开发_一篇文章入门Python生态系统
译者按:原文写于2011年末,虽然文中关于Python 3的一些说法可以说已经不成立了,但是作为一篇面向从其他语言转型到Python的程序员来说,本文对Python的生态系统还是做了较为全面的介绍.文 ...
- python制作一个教学网站_小白如何入门Python? 制作一个网站为例
首先最重要的问题是为什么要学习python?这个问题这个将指导你如何学习Python和学习的方式. 以你最终想制作一个网站为例.从一个通用的学习资源列表开始不仅会消磨你的激情,而且你获得的知识很难应用 ...
- 四全集学python选哪种电脑_“Python教程哪个版本最适合学习?“python教程全集
python教程,求一套比较好的python教程 好不好主要先看你自己,理解能力样,有没有接触过编程,有没础,这很重要: 看教程,能不能先给你建立起知识体系框架,许多教程一上来就直接给你灌输知识很让人 ...
- python猜谜语小游戏代码_树莓派趣学实战100例--网络应用+Python编程+传感器+服务器搭建...
导语 内容提要 本书是面向第4代树莓派(Raspberry Pi4B)的全新实战指南.树莓派(Raspberry Pi)是一款价格低廉.只有一张信用卡大小的计算机.然而麻雀虽小,却五脏俱全,树莓派是一 ...
- python软件下载手机版-Learn Python中文版app
Learn Python中文版app是一个用手机学习Python编程的apk,软件经过本人亲自安装,可以用,自带夜间模式.语音模式以及编写代码的功能.可以用邮箱注册登录,很方便.每天利用零碎的时间学习 ...
最新文章
- 纯CSS实现文字一行居中,多行左对齐的方法
- 23年前的今天,首辆火星车登陆火星,后来还拯救了马特达蒙
- CentOS7安装MySQL并设置远程登录
- Whose Hall?
- Centos7 下yum安装mysql
- 镇定的反义词是什么,标准答案是
- 列表、表格与媒体元素
- 安装Cocoapods, 更新gem出现的问题
- 应用内悬浮窗适配方案实战
- 【2021自我知识蒸馏】Extracting knowledge from features with multilevel abstraction
- web项目登录报错:HTTP Status 500 - Error instantiating servlet class com.gxuwz.medical.web.servlet.LoginSer
- JupyterLab-APP
- 《SSO系列二》自己动手写一个SSO
- 【转载】网站关闭了域名备案信息是否需要注销,答案是一定要记得注销域名备案信息,防止域名过期后被他人注册用于非法用途而带来不必要的麻烦...
- Transformer中引用iqd作为数据源导入报错TR1907与TR3312
- C# 淘宝商品微信返利助手开发-(八)微信号对接
- 课程设计-商店管理系统(一)----前端页面的制作(一)
- 冯·诺依曼--数学奇才计算机之父
- ubuntu服务器卸载mysql_在Ubuntu或Debian系统的服务器上卸载MySQL的方法
- 5款可以在学习和办公上提供帮助的软件