函数是什么鬼?
函数就是打包好的代码块。就像我们之前使用的python内置函数print()一样,函数需要有几个要素:
- 有个名字:比如print
- 能接收参数
- 有返回值
- 可以反复使用
为什么要有函数
- 一劳永逸:一次编写,无限调用
- 整齐衣柜:代码整洁有条理
- 方便维修:修改只需改一处
- 隐藏细节:使用者不用知道内部原理
函数分类
Python的函数分为四类:内置函数、标准库函数、第三方库函数、自定义函数。
**内置函数
:Python启动时就自动加载到内存
中的函数,例如list、len、print等。
标准库函数
:需要通过import语句
来导入的库中的函数,例如time、os等。
第三方库
:需要手动下载并安装
,然后通过import导入
的库中的函数,例如opencv。
自定义函数
:由用户在自己的模块中编写的函数。
自定义函数
- 使用 def 关键字来声明函数:
def 函数名(参数):
函数体
return 返回值
# 函数定义
def getStarAge(starName):
stars = {"赵丽颖":36, "白鹿": 29, "杨紫": 30}
age = stars[starName]
return age
starAge = getStarAge("赵丽颖")
# 函数调用
print(starAge) # 36
- 如果要定义一个无任何功能的空函数,函数体只写 pass 即可。
def emptyFn():
pass
emptyFn()
- 当我们不确定参数的个数时,可以使用不定长参数,在**参数名前加 *** 进行声明
def manyParamFn(*params):
print(params) # ('hello', 'world')
for p in params:
print(p)
manyParamFn("hello", "world")
4. 使用lambda定义匿名函数
lambda 参数 : 表达式
sum = lambda x,y:x+y
print(sum(3,9)) # 12
自定义函数注意事项:
- 名字要像"见名知意"
- 一个函数只做一件事
- 适当添加注释说明
- 参数不超过3个为宜