1.1 内置函数
1.2 自定义函数
1.3 函数的参数
总结
内置函数,顾名思义就是Python底层中维护的函数,直接调用即可。上午翻阅资料过程中找到了一个记录比较详细的网站,在此贴给大家,希望能对大家有所帮助。
链接地址
在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。
我们可以自定义一个绝对值的函数。
def my_abs(x):
if x > 0:
return x
else:
return -x
print('绝对值为',my_abs(int(input('请输入:'))))
#控制台输出
请输入:-2
绝对值为 2
其实,我们在自定义函数中,可以设置多个返回值,而且这个返回值底层,其实维护了一个Tuple元组,那么我们下面写一个自定义函数来计算矩形的周长以及面积。
def Rect(x,y):
girth = (x+y) * 2
area = x * y
return girth , area
a = int(input('请输入矩形长度:'))
b = int(input('请输入矩形宽度:'))
print(type(Rect(a,b)))
c,d = Rect(a,b)
print('矩形周长为',c)
print('矩形面积为',d)
print(Rect(a,b))
#控制台输出
请输入矩形长度:10
请输入矩形宽度:20
<class 'tuple'>
矩形周长为 60
矩形面积为 200
(60, 200)
在我们正常写的函数中,可以设置必选参数以及默认参数;顾名思义,默认参数就是在调用该函数时可以不设置该参数,那么此时默认会调用给定的默认参数。
def stu(name,sex,age = 18):
print(name,sex,age)
stu('张三','男',20)
stu('李四','女')
#控制台输出
张三 男 20
李四 女 18
我们要注意的是必选参数在前,默认参数在后,否则Python的解释器会报错。
定义默认参数要牢记一点:默认参数必须指向不变对象!
在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。
我们以数学题为例子,给定一组数字a,b,c……,请计算a2 + b2 + c2 + ……。
要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首先想到可以把a,b,c……作为一个list或tuple传进来,这样,函数可以定义如下:
def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print(calc((1,2,3,4)))
#控制台输出
30
我们还可以定义一个可变的参数,定义可变参数和定义一个list或tuple参数相比,仅仅在参数前面加了一个*号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数:
def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print(calc(1,2,3,4,5))
#控制台输出
55
从图中也可看出,这两种参数类型的区别就是,第一种只是传了一个List或者Tuple,本质上还是一个参数,而第二种则是不定长的参数,本质上可以传无数个参数。
这就是Python的内置函数和比较基础的自定义函数了,结合具体业务逻辑也可以写比较复杂的自定义函数,我认为Python的函数很类似于Java中的方法。