python对函数的理解

函数

函数可以提高编写代码效率、代码的重用、让程序更小、模块化
可以将一段独立功能的代码集成在一个块中、封装独立功能
# 函数定义(参数名为形式参数)
def 函数名(参数名):
    函数体
# 调用函数(享受封装的成功)
函数名(实际参数)
例:print函数
print(sep,end) sep(元素中分割)和end(结束符)为函数的参数

函数的参数

# 函数共有四种参数(位置参数、关键字参数、默认参数、可变参数),下面分别来介绍这四种参数
# 位置参数(输入的实际参数的时候和形式参数的位置是一一对应的)
例:
def number(a,b):
  函数体
注意:number(a,b) a和b的位置不可变,否则会影响结果,这种形式就是位置参数、实参个数与形式参数个数一致
# 关键字参数(输入的实际参数位置可以和形式参数位置不一致,由关键字判断)
例:
def number(a,b):
  函数体
number(a=,b=) a和b的位置可变,由关键字区分,实参个数和形式参数个数一致
# 默认参数
例:
def number(a,b=1):
  函数体
number(a="1",b) b可以不用传参,会直接使用默认参数,如果在实参中(关键子参数、位置参数)传了默认参数会使用实参来代替默认参数、在函数定义时,默认参数需要放在非默认参数后面
# 可变参数
例:
def number(*args,**kwargs):
  函数体
type(args)=tuple将形参接收到的所有位置参数,会保存到元组中,*一个星号只能接收位置参数
tyoe(kwargs)=dict将形参接收到所有关键子参数,会保存到字典中,**两个型号接收关键参数
 return
一个函数默认不使用return返回的话,默认返回None
函数中遇到return就会返回,这个函数运行结束
return的返回值会返回到函数调用处
可以返回多个值,用逗号隔开
返回多个值类型是元组类型
使用return会跳出循环
模块及函数的调用

#模块定义: 任意一个py文件就是模块
模块的名称,一定要符合标识符的命名规范
py文件中定义的函数,变量,类型能呗其他py文件导入之后,进行调用
#函数的调用:
import py文件
from xxx import 特定的函数
from xxx import * (导入所有函数和全部变量) 不推荐使用,有可能造成重名,外加占用cpu

变量

# 函数中的作用域
局部变量:函数体内部定义变量
全局变量:模块内的变量
# 函数体内的一个变量查找顺序
1、当前函数内部作用域中查找有没有定义这个变量
2、会去全局作用域中查找,如果有同名的变量,那么会直接获取
3、会去系统模块中查找,如果系统模块中找不到,那么会NameError异常
# 函数体内部将局部变量改为全局变量
global变量  # 使用global后,指定的变量一定为全局变量

 

posted @ 2020-07-09 13:35  潇潇灬  阅读(280)  评论(0编辑  收藏  举报