Python基础之函数初识
##1.函数的定义
函数:完成特定功能的代码段
函数分为定义和调用两部分,函数定义过程函数内部代码不会执行,只有通过函数调用,函数内部的代码才会执行
函数定义语法:
def 函数名(参数列表):
函数体
# 函数定义
def outPut():
print("Hello World!")
# 函数调用
outPut()
# Hello World!
##2.函数分类
函数分类:
1.无参无返回值 比如 outPut()
函数
2.有参无返回值 比如 max_num(num1, num2)
函数
3.无参有返回值 比如 random_int()
函数
4.有参有返回值 比如 random_color(min,max)
函数
函数参数分为实际参数和形式参数
形式参数:函数定义过程中传递的参数称为形式参数,注意形式参数本身没有实际含义,只有当实际参数的值传递给形式参数时,形参会被当成一个临时容器,存储该数据,保证函数执行过程中数据的使用
实际参数:函数调用过程中传递的参数称为实际参数,实际参数决定了形式参数的数据类型和具体的数据值
return:关键字,函数调用结束的标识,作用是将return后面的内容返回给外界,同时结束本次函数调用,如果return后面有代码也不再执行,此时函数调用过程中,函数代码必须放在return关键字前面
# 无参无返回值
# 函数定义
def outPut():
print("Hello World!")
# 函数调用
outPut()
# Hello World!
# 有参无返回值
# 求最大值
def max_num(num1, num2):
print(max(num1, num2))
max_num(12, 13)
# 13
# 无参有返回值
# 定义函数完成[0,1]的随意整数的返回
def random_int():
return random.randint(0, 1)
num = random_int()
print(num)
# 有参有返回值
# 定义一个函数,返回一个指定数据范围的随机颜色
def random_color(min,max):
if min > max:
raise ValueError("min must be smaller than max")
else:
return (random.randint(min,max), random.randint(min,max), random.randint(min,max))
red, green, blue = random_color(100, 200)
print(red, green, blue)
##3.函数变量
在函数定义过程中,变量分为全局变量和局部变量
全局变量:定义在函数外部的变量称为全局变量,全局变量的生命周期从变量定义开始直到程序运行结束
局部变量:定义在函数内部的变量称为局部变量,局部变量的生命周期只是在函数内部有效,当函数调用结束之后变量自动被系统回收
在Python程序中,变量的使用遵循就近原则,如果想要在函数内部使用全局变量,此时一定要提前使用global 变量名,声明该变量是全局变量。
注意:全局变量使用有风险,慎用。因此开发者一般以局部变量位置,只有需要在不同函数中访问一个数据是才会使用全局变量
x = 20
def change(num):
global x
x = 30
num += 20
print(num)
print(x)
change(x)
print(x)
# 40
# 30
# 30