- 什么是函数 函数是
组织好
的,可重复使用
的,用来实现单一
,或相关联功能
的代码块
-
我们为什么要用函数 函数能够提高应用的
模块性
,和代码的重复利用率
,我们在前面章节里已经使用了很多内置函数
,比如print()
、len()
、max()
、input()
等。可以直接从Python官方网站查看文档点这里。但我们也可以自建函数,我们叫做用户自定义函数
。
内置函数
当我们在调用内置函数的同时,也要保证传入参数的数量与类型是正确的。
#如果函数内传入的参数数量不对会报TypeError错误。并明确指出函数的参数规则要求
# 判断数字1和6谁的值最大并打印出来
print(max(1,6)) #6
# 获取数字-20的绝对值并打印出来
print(abs(-20)) #20
# 获取字符串 "42team" 的长度并打印出来
print(len("42team")) #6
#将字符串类型的数字转换成int类型,如果使用ty()函数查看int('1234')会发现其类型已经不再是str而是int
print(int('1234')) #1234
当我们对一个新的内置函数并不了解其含义时,不仅可以访问官方文档,还可以使用内置函数help()去查看相关函数的帮助信息。
print(help(len))
定义函数
- 我们可-以随意自定义一个由自己想要功能的函数,简单规则如下:
- 函数代码必须以def关键字开头,后接函数标识符名称和圆括号()
- 任何传入参数与自变量必须都要放在圆括号中间,圆括号中可以用于定义参数。
- 函数内容以冒号起始,并且缩进。
- return [表达式]用来结束函数,返回一个值给调用方。不带表达式的return相当于返回None
例如我们自定义一个myMax()函数用来实现获取两个值的最大值:
#def关键词 函数名称为myMax 圆括号内为可传进来的两个参数 冒号结尾
def myMax(a,b):
# 判断传入参数a与传入参数b的数据类型是否均为int类型
if type(a) == int and type(b) == int :
# 如果a大于或等于b,则输出a,否则输出b
if a >= b:
return a
else:
return b
else:
return None
# 传入参数-1与3,调用函数结束后并打印返回值
print(myMax(-1,3))
函数内部语句在执行过程中,一旦
执行到return
,函数即执行完毕
并返回结果值
如果你已将包含myMax()
函数的文件保存为function.py
文件,那么在该文件的同一级
下的其他python文件内,也可使用from function import myMax
来导入myMax()
函数
空函数
如果想定义一个什么事也不做的空函数,可以使用pass语句:
def notRun():
pass
pass可以用来作为占位符
,比如现在还没想好怎么写
函数的代码,就可以先放一个pass,让代码能运行
起来。因为很多语句都需要有返回语句
,如果没有代码就会有语法错误
,所以可以使用pass代替
。
返回多个值
有的时候我们需要通过一个函数获取多个值,这也是绝对可以实现的。
# 定义函数moreNum
def moreNum(a,b):
# 返回a与b进行加减乘除的四个值,不过结果集是一个元组(tuple)
return a+b,a-b,a*b,a/b
print(moreNum(12,2))
打印为:
(14, 10, 24, 6.0)