函数初步¶
介绍¶
我们在中学学过函数y = f(x)。程序中的函数没有非常严格的定义,但是保留了函数基本形式。function
的本意就是功能的意思,可以简单的理解为实现某个功能代码块。只不过这个代码块进行了封装处理。
y = f(x)
其中x称为输入参数,y称为返回参数。函数的定义使用关键词def
。下面是计算圆的面积的函数。
def compute_circle_area(r):
s = 3.14 * r ** 2
return s
其中r就是圆的半径,称为输入参数,s
是圆的面积,作为返回值。这个函数的功能f
就是计算圆的面积.是不是发现很简单。
作业
根据三角形的三边长,a,b,c计算三角形的面积,使用海伦公式。请写出函数的计算程序。
输入参数¶
无输入参数¶
在数学中函数需要变量,就是输入参数。那么在程序中一定需要输入参数吗?答案是非必须的。函数可以没有输入参数,仅仅完成某一功能。比如获取1-10之间随机数。
补充
随机数需要用到random模块,模块的导入使用import
import random
def get_random_number():
"""获取1-10之间的随机数"""
num = random.randint(1, 10)
return num
# 9
import random
def get_random_number(up_num):
"""获取1-up_num之间的随机数"""
num = random.randint(1, up_num)
return num
思考
如果up_num小于1会怎么样,读者自行尝试
多个输入参数¶
输入参数可以没有,可以传一个,如果有多个输入参数怎么办呢?比如说我们现在碰到这样的问题:
输入三条线段的长度,判断这三条线段能否构成三角形。
输入的参数有三条边,输出结果可以自定义了。比如我们让函数输出0和1,0表示不能,1表示可以。我们也可以输出布尔值,True表示可以,False表示不可以。甚至可以输出字符串"可以"和"不可以"。
输出结果完全有你来控制,这里我们选择布尔值的输出。
- 先写函数的输入参数,定义输出结果
res
默认为False。
def form_triangle(a, b, c):
res = False
- 判断三边能不能构成三角形。由于两边之差可能是负数,为了简单,引入绝对值函数。
import math
def form_triangle(a, b, c):
res = False
if (math.fabs(a - b) < c) and (a + b > c):
res = True
return res
如果不满足if条件,那就意味着不能构成三角形,返回默认的res结果。如果满足if条件,则res被赋值为True,最终返回res。
总结¶
本节内容讲解了Python中函数的基本使用,包括函数的定义,输入与输出,重点讲解了函数输入参数,可以无输出参数,也可以有多个输入参数。学习过函数以后,读者以后写程序尽量使用函数来完成。后续继续介绍函数的使用。