南充网站开发,唐山营销型网站建设,网络营销服务的特点,宁乡县建设局网站【Python小短课 11】自上而下#xff0c;分而治之
做任何事都需计划#xff0c;编程也是。
譬如写文章要列大纲、作画要想布局#xff0c;编程也需先谋全局#xff0c;而后思虑细节。
就以上回说到的“找宝藏”这个程序举例#xff0c;最顶层的需求自然就是“找宝藏”分而治之
做任何事都需计划编程也是。
譬如写文章要列大纲、作画要想布局编程也需先谋全局而后思虑细节。
就以上回说到的“找宝藏”这个程序举例最顶层的需求自然就是“找宝藏”而进行分解发现还需实现“判断是不是比神兽弱”“判断是否好运”这两个功能接着我们针对这两个功能也想分解发现已经太简单那就不需分解了。
代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import random
#实现“判断是不是比神兽弱”
def isWeakerThanBeast ():
iRan random.randint(1,10)
if iRan9:
return True
else:
return False
#实现“判断是否好运”
def isLucky ():
iRan random.randint(1,10)
if iRan1:
return True
else:
return False
#实现“找宝藏”
def findTreasure ():
iCount 0
while True:
iCount iCount 1
#判断是不是比神兽弱
if isWeakerThanBeast():
continue
#判断是否好运
if isLucky():
break
print(str(iCount)次找到宝藏)
#执行“找宝藏”需求
findTreasure()
运行结果从功能来说和上一回学的“找宝藏”程序完全一样不一样的是我们对“找宝藏”这个需求findTreasure进行了自上而下的分解最终分解出两个子需求“判断是不是比神兽弱”isWeakerThanBeast“判断是否好运”isLucky。
def是什么跟大家简单提一句是Python世界里定义函数的语句而函数则实现了我们对需求的分解。
各位小萌新暂时并不需理解太多细节或者语法只需细细体会“自上而下分而治之”这个思路。
关于函数的好处和更多细节且待后面再行分解。