版权声明:https://blog.csdn.net/lancer777?assign_skin=skin-blackboard https://blog.csdn.net/lancer777/article/details/82803141
函数:
函数的定义:
1.关键字 def
2.空格
3.函数名
4.括号
5.冒号
def 函数名(参数):
代码
参数,参数列表,形参列表
函数的调用:
用函数名()的方式
结构化编程:
非结构化编程:一组逻辑写在同一组代码中
结构化编程:一组逻辑写在不同的代码中,通过相互调用,配合完成。
函数的运行机制:
当函数调用的时候,系统会自动找到函数名 进入到函数内部 逐行执行函数 当函数执行完毕时 会返回到函数调用处
函数的特点:
避免代码的冗余
函数具有可重用性
函数具有可维护性
函数的定义:
1.函数也可以定义在另一个函数的内部
2.函数和变量一样,在使用之前要先定义。
3.定义要使用关键字 def()
4.函数名和标识符命名规则
函数的参数:
1.又叫参数列表,或者叫形参列表。
参数可以有多个,中间可以用逗号隔开。
形式参数与实际参数
形式参数:在函数定义的时候,函数名后括号内的参数,我们叫他形式参数。
实际参数:在函数调用的时候,函数名后括号内的参数,叫实际参数。
2 位置参数
我们的实际参数会按照形式参数的位置,依次传递参数
3 关键字参数
我们的实际参数会按照指定的关键字参数,来传递参数
e.g.:def fuHao2(a,b):
print(a,b)
fuHao2(b=10,a=20)
4 默认参数:在定义函数的收 在形参列表中定义的 已经给定了的参数的值
eg:
def fuHao1(a=10,b=20):
5 当未知参数和关键字参数混用的时候
def fuHao(a,b,c):
print(a,b,c)
当位置参数与关键字参数混用的时候,关键字参数要放在位置参数后面
函数的返回值:
def fuhao(a):
c=10*a
return c
print(fuhao(10))
1.如果不写返回值,则默认返回一个None return None
2.如果要求有返回值,则在函数末尾添加一个return
3.如果需要返回多个值,用逗号隔开,则系统将返回值打包成一个元组返回
4.元组返回
变量
全局变量:在函数最外层定义的变量是全局变量(没有缩进)
使用范围:从变量定义开始,到包含它的代码块结束--整个文件
局部变量:定义在函数内部的变量
使用变量:从变量的定义开始,到包含它的代码块结束
当全局变量和局部变量发送冲突的时候,以局部变量为准。
global 可以影响变量
用法: global 全局变量
变量=值
当全局变量与局部变量发生冲突的时候,优先选择局部变量
a=100
b=200
def add():
global b
b=100
a=50
c=a+b
return a,b,c
print(a,b)
print(add())
print(a,b)
=============== RESTART: C:\Users\Administrator\Desktop\代码板.py ===============
100 200
(50, 100, 150)
100 100
在python3中 除了global以外 还有nonlocal
nonlocal:
nonlocal影响的范围是其上一层函数的变量
用法:nonlocal+变量
变量=值
值
a=100
def add2():
a=200
pass
def add1():
nonlocal a
a=50
b=a+50
return b
print(add1())
print(a)
print(a)
add2()
print(a)