吴枫 python小课账号_无门槛速学编程——Python小短课,自上而下分而治之

【Python小短课 11】自上而下,分而治之

做任何事都需计划,编程也是。

譬如写文章要列大纲、作画要想布局,编程也需先谋全局,而后思虑细节。

就以上回说到的“找宝藏”这个程序举例,最顶层的需求自然就是“找宝藏”,而进行分解发现还需实现“判断是不是比神兽弱”“判断是否好运”这两个功能,接着,我们针对这两个功能也想分解,发现已经太简单,那就不需分解了。

代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import random

#实现“判断是不是比神兽弱”

def isWeakerThanBeast ():

iRan = random.randint(1,10)

if iRan<=9:

return True

else:

return False

#实现“判断是否好运”

def isLucky ():

iRan = random.randint(1,10)

if iRan<=1:

return True

else:

return False

#实现“找宝藏”

def findTreasure ():

iCount = 0

while True:

iCount = iCount + 1

#判断是不是比神兽弱

if isWeakerThanBeast():

continue

#判断是否好运

if isLucky():

break

print(str(iCount)+"次找到宝藏")

#执行“找宝藏”需求

findTreasure()

运行结果:

5fdf8db1cb1349549ab372ce00ed9a5dd0094a17.jpeg?token=577b4f78be8ecbec5799818342fd5fe9&s=3EAA7A234B62472498D480DA000080B1

从功能来说和上一回学的“找宝藏”程序完全一样,不一样的是我们对“找宝藏”这个需求(findTreasure)进行了自上而下的分解,最终分解出两个子需求“判断是不是比神兽弱”(isWeakerThanBeast)“判断是否好运”(isLucky)。

def是什么,跟大家简单提一句,是Python世界里定义函数的语句,而函数则实现了我们对需求的分解。

各位小萌新暂时并不需理解太多细节或者语法,只需细细体会“自上而下,分而治之”这个思路。

关于函数的好处和更多细节,且待后面再行分解。

1c950a7b02087bf45a9311d4aa705f2911dfcf3c.jpeg?token=430c767ec885a41ef90db8cb9c8cdc6f&s=3430CE344992FA4556B8C9D70300C0AB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/534054.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机本地磁盘D无法扩展,计算机上的本地磁盘D突然无法打开,表明它需要格式化...

接受使用数据恢复软件将重要数据保存到其他磁盘FindDate特定操作: 运行软件----“打开”后&#xff0c;将显示要还原的驱动器. C \ D \ E \ F选择您要还原的一个&#xff0c;它将开始. 扫描后&#xff0c;再次保存扫描的文件. 哈哈&#xff0c;希望对您有所帮助.最后&#xff0…

caffe运行不停止_caffe(gpu)安装过程及问题解决

2019.12.05 caffe(gpu)安装参考网址&#xff1a;教程1&#xff1a;weiliu89/caffe​github.com教程2&#xff1a;https://blog.csdn.net/yggaoeecs/article/details/79163789​blog.csdn.net环境&#xff1a;Ubuntu16.04cuda10.0安装过程&#xff1a;git clone https://github.…

2021年考计算机考研三战,2021考研的小伙伴有3条忠告一定要记得,这些都是历年实战经验...

2021考研的小伙伴有3条忠告一定要记得&#xff0c;这些都是历年实战经验&#xff0c;考研一定要记得避开三个大坑。1&#xff0c;分数线低的学校就一定容易考。有一些学校分数线看着很低但实际上难度不低&#xff0c;比如首都师范大学 &#xff0c;很多专业就是国家线录取甚至招…

c++ 返回string_JVM系列之:String.intern和stringTable

简介StringTable是什么&#xff1f;它和String.intern有什么关系呢&#xff1f;在字符串对象的创建过程中&#xff0c;StringTable有起到了什么作用呢&#xff1f;一切的答案都在本文中&#xff0c;快来看看吧。intern简介intern是String类中的一个native方法&#xff0c;所以它…

华为 虚拟键盘_华为mate30 pro虚拟机械键盘特有体验,虽是虚拟,但却感受逼真...

华为Mate30 pro已于26日在国内正式发布了。此外&#xff0c;根据了解华为Mate30系列现在已经突破了5亿的销售额。看来&#xff0c;华为的这个下半年旗舰手机非常受欢迎啊。华为Mate30系列现在在国内已经发布了&#xff0c;其整体感官看上去与海外的没有多大的区别。其实&#x…

计算机有什么著名基金经理排名,百万年薪的基金经理,都是什么专业出身?!...

有人会说了“小哔君你四不四撒&#xff01;基金经理肯定是金融专业出身的咯&#xff1f;不然嘞&#xff1f;”但事实的真相是许多基金经理都并非科班出身这要从基金经理的晋升机制说起了&#xff01;如下图基金经理都是从研究员做起的&#xff01;那么问题来了&#xff0c;如何…

遍历children_589. N叉树的前序遍历

589. N叉树的前序遍历给定一个 N 叉树&#xff0c;返回其节点值的前序遍历。例如&#xff0c;给定一个 3叉树 :返回其前序遍历: [1,3,5,6,2,4]。说明: 递归法很简单&#xff0c;你可以使用迭代法完成此题吗?题解&#xff1a;既然是树的遍历&#xff0c;那么一共就是两种思路&a…

计算机未显示移动硬盘,电脑不显示移动硬盘怎么办_移动硬盘已连接不显示解决教程...

最近有很多小伙伴咨询小编&#xff0c;电脑不显示移动硬盘怎么办&#xff0c;怎么设置才能恢复呢&#xff1f;其实操作内容很简单&#xff0c;尝试删除你的USB3.0可扩展主机控制器,再扫描硬件改动&#xff0c;今天就由小编来告诉你&#xff0c;移动硬盘已连接不显示的解决方法。…

八个角最多可以把平面分成多少部分?_一个空间最多能被分成几块?

相信大家在小学奥数中都遇到这样一个问题&#xff1a;4条直线最多能将平面分成几部分&#xff1f;这个问题并不能难倒我们&#xff0c;但是如果将问题改为&#xff1a;4个平面最多能将空间分为几部分&#xff1f;这下子我们可能就要放弃了。为了解决这个问题&#xff0c;今天我…

破坏计算机信息系统功能罪,破坏计算机信息系统罪

破坏计算机信息系统罪2010年05月05日19:42法律咨询 我要评论一、概念&nbsp&nbsp&nbsp&nbsp破坏计算机信息系统罪(刑法第286条)&#xff0c;是指违反国家规定&#xff0c;对计算机信息系统功能或计算机信息系统中存储、处理或者传输的数据和应用程序进行破坏…

东京战纪服务器维护中,东京战纪7月21维护公告 当前测试进度介绍

东京战纪当前的测试进度已经有了很大的进步&#xff0c;接下来小编就跟大家一起看看测试期间对玩家给大家的报告吧。亲爱的喰种和CCG搜查官们7月19日中午12:00&#xff0c;我们怀着紧张又忐忑的心情开启了《东京战纪》官网限量删档技术测试。大家对《东京喰种》IP的热爱和对《东…

docker重启后容器消失_docker设置固定ip地址

代码来源:博客园 原文作者:雪之谷 原文链接:https://www.cnblogs.com/xuezhigu/p/8257129.html 本文版权归原作者所有,如有侵权请立即与我联系,我将及时处理。 背景: 我开发用的机器上边会启动几个容器,就因为保洁阿姨碰了一下我的插排,我的机器被断电关机了。 默认情况下…

模型稳定后放在服务器上,把工程放在服务器上

把工程放在服务器上 内容精选换一换获取方式&#xff1a;Ascend-mindx-msinstaller_{version}.zip&#xff1a;获取链接适用场景&#xff1a;在一台Linux服务器上使用msInstaller工具给本机安装开发或运行环境。在一台Linux服务器上使用msInstaller工具远程给昇腾AI设备安装开发…

html计算器_学习HTML、CSS和JavaScript的最佳方法是什么?

与其他后端语言相比&#xff0c;HTML、CSS和JavaScript无论从阅读角度还是编写的角度来说都更加容易一点。所以新手在学习前端知识的时候不必有太大的心理压力 &#xff0c;心态摆正后&#xff0c;大部分人都可以将前端学好。下面聊聊Html、CSS、JavaScript的最佳学习方法&…

网站重新解析换服务器,更换解析服务器地址

更换解析服务器地址 内容精选换一换普通的域名解析只为用户返回解析记录&#xff0c;不会考虑访问者的来源&#xff0c;这样所有的访问者都被解析到相同的IP地址上&#xff0c;容易出现由跨运营商访问引起网络延迟。运营商线路解析是云解析服务提供的按运营商维度来区分访问者来…

git merge 回退_Git 基础学习总结2(学不会你锤我)

作者序&#xff1a;我在知乎上搜索了有关 Git 的学习文章&#xff0c;虽然点赞很多但我认为他们写得并不好&#xff0c;内容不够详尽&#xff0c;排版让人看得疲劳&#xff0c;所以我决定自己写几篇关于 Git 的学习文章。当别人提供的不好用就自己创造一个新的&#xff0c;这也…

python破解百度网盘提取码_Python 一键获取百度网盘提取码

该 GIF 图来自于官网&#xff0c;文末有给出链接。 描述 依托于百度网盘巨大的的云存储空间&#xff0c;绝大数人会习惯性的将一些资料什么的存储到上面&#xff0c;但是有的私密链接需要提取码&#xff0c;但是让每个想下载私密资源的人记住每一个提取码显然是不现实的。这个时…

vs12新建ajax,VS2012下WebService 的创建,部署和使用

WebService,即Web服务,能使得运行在不同机器上的不同应用无须借助,专门的第三方软件或硬件,就可相互交换数据或集成.第一次选择WebService,是为了替代数据库远程连接.我们都知道当SQL允许远程时,则要打开某一端口.但这一点在我们已经部署好的服务器上,却是不被允许的,于是就选择…

pythonsql注入_python使用mysql,sql注入问题

python使用mysql importpymysql connpymysql.connect( host 127.0.0.1, #连接地址 port 3306, #端口 user root, #用户名 password , #密码 database db, #库名称 charset utf8 #编码格式 utf8,不是utf-8 ) cursor conn.cursor(pymsql.cursors.DictCursor) #产生一个游标,…

js 控制鼠标_JS逆向 | 面向小白之eval混淆

所有文章首发在我的微信公众号“逆向新手”&#xff0c;更多逆向系列请关注公众号&#xff0c;谢谢&#xff01;声明&#xff1a;本文只作学习研究&#xff0c;禁止用于非法用途&#xff0c;否则后果自负&#xff0c;如有侵权&#xff0c;请告知删除&#xff0c;谢谢&#xff0…