【Python 第22课】函数应用示例


前两课稍稍介绍了一下函数,但光说概念还是有些抽象了,今天就来把之前那个小游戏用函数改写一下。

 

我希望有这样一个函数,它比较两个数的大小。

如果第一个数小了,就输出“too small”

如果第一个数大了,就输出“too big”

如果相等,就输出“bingo!”(意为:猜中了!)

 

函数还有个返回值,当两数相等的时候返回True,不等就返回False。

 

于是我们来定义这个函数:

def isEqual(num1, num2):
   if num1<num2:
       print ('too small')
       return False
   if num1>num2:
       print ('too big')
       return False
   if num1==num2:
       print ('bingo!')
       return True

 

这里说一下,return 是函数的结束语句,return 后面的值被作为这个函数的返回值。函数中任何地方的 return 被执行到的时候,这个函数就会立刻结束并跳出。

注意:函数的 返回值 和我们前面说的 输出 是两回事。print 输出是将结果显示在控制台中,最终一定是转成字符类型;而 返回值,是将结果返回到调用函数的地方,可以是任何类型。

 

然后在我们的小游戏里使用这个函数:

from random import randint
num = randint(1, 100)
print('Guess what I think?')
bingo = False
while bingo == False:
   answer = int(input())
   bingo = isEqual(answer, num)

 

在 isEqual 函数内部,会输出 answer 和 num 的比较结果,如果相等的话,bingo 会得到返回值 True,否则 bingo 得到 False,循环继续。

 

 

函数可以把某个功能的代码分离出来,在需要的时候重复使用,就像拼装积木一样,这会让程序结构更清晰。

 

来源:Crossin的编程教室