一、函数简介
如数学上的函数一样,例如三角函数sin(),给一个角度值,他就会有一个结果。用计算器计算时,我们知道输入角度就会有结果,那么在编程时如何实现sin()这个函数的功能呢?
1,函数的基本概念 函数也叫功能,它是对数据与代码的封装,实现了代码的复用。
当我们在pycharm中写代码时,假如先写了一个功能的代码,我们可以右键进行运行;如果我们又写了一个功能代码,点击运行时,两个功能代码都会运行,这时就可以把各个功能的代码块进行封装起来,写成函数。下次想要用哪个功能就调哪个函数。
2,函数的分类 python函数有四类,分别是:内置函数(builtin functions),标准库函数,第三方库函数,自定义函数。
内置函数:python一经运行就加载到内存的,例如有list,len,str等函数
标准库函数:需要用import语句进行导入,常见标准库有time,os等
第三方库:需要另外下载到本地的库,例如opencv库,然后用import导入
自定义函数:自己在模块里的写的函数
二、函数的定义与调用
1,函数的定义
定义语法如下:
def 函数名 (参数) :
'''文档字符串'''
函数体/若干语句
def func():
"""
打印'人生苦短,我学python'
"""
print('人生苦短,我学python')
当python解释器遇到 def时,他就会在内存里创建一块内存块来存储代码信息,即函数对象,然后将内存块的首地址给函数名称,实现变量名与函数对象的绑定。
然而并不会执行,因为还没有调用。
2,函数的调用
语法格式如下:
函数名()
def func():
"""
打印'人生苦短,我学python'
"""
print('人生苦短,我学python')
func()
# 人生苦短,我学python
在函数名的后面加上英文小括号()即可。
另外除了用函数名来绑定函数对象之外,也可以用其他变量名来绑定函数。
def func():
"""
打印'人生苦短,我学python'
"""
print('人生苦短,我学python')
func_copy = func # func_copy也与函数对象进行了绑定
func_copy()
# 人生苦短,我学python
三、函数参数的使用
在函数名的后面用的小括号内部填写 参数
- 多个参数之间使用 ,分隔
def sum_2_num(num1, num2):
"""对两个数字求和"""
result = num1 + num2
print("%d + %d = %d" % (num1, num2, result))
sum_2_num(100, 2)
3.1 参数的作用
- 函数,把 具有独立功能的代码块 组织为一个小模块,在需要的时候 调用
- 函数的参数,增加函数的通用性,针对 相同的数据处理逻辑,能够 适应更多的数据
- 1,在函数 内部,吧参数当作 变量 使用,进行需要的数据处理
- 2,函数调用时,按照含义定义的 参数顺序,把希望在函数内部处理的数据,通过参数传递
3.2 形参和实参
- 形参:定义 函数时,小括号中的参数,是用来接收参数的,在函数内部作为 变量使用
- 实参:调用 函数时,小括号中的参数,是用来把数据传递到 函数内部 用的
函数的返回值
- 在程序开发中,有时候,会希望一个函数执行完结果后,告诉调用者一个结果,以便调用者针对具体的结果做后续的处理
- 返回值 是函数 完成工作后,最后给调用者 一个结果
- 在函数中使用 return关键字 可以返回结果
- 用函数一方,可以 使用变量 来 接受 函数的返回结果 注意 return表示返回,后续的代码都不会被执行
def sum2_num(num1, num2):
"""对两个数字的求和"""
result = num1 + num2
# 可以使用返回值,告诉调用函数一方计算的结果
return result
# 可以使用变量,来接受函数执行的返回结果
sum_result = sum2_num(100, 2)
print("计算结果: %d" % sum_result)