函数
函数是可以重复执行的语句块,可以重复调用
作用:
用于封装可重复执行的语句,提高语句的可重用性
函数定义语句 def语句的语法:
函数名(参数列表)
语句名(代码块)
函数的语法说明:
函数的名字就是语句块的名称
函数的命名规则与变量的命名规则相同(必须为标识符)
函数名是一个变量(不要轻易对其赋值)
函数有自己的名字空间,在函数内部可以访问外部的变量,但外部的语句不能访问函数内的变量
函数如果不需要传入参数,则参数列表可以为空
语句部分不能为空,如果为空需要填充pass语句
示例1:
Def say_hello():
Print(“hello world”)
Pirnt(“hello tarena”)
Print(“hello everyone”)
#调用say_hello函数,调用时会执行say_hello代码块
say_hello()
函数调用:
函数名(实际调用传递参数)
注:
实际调用传递参数简称“实参”
调用说明:
1函数调用是一个表达式
2如果没有return语句,函数执行完以后返回None对象
3如果函数需要返回其他的对象,需要用return语句
4函数调用格式为 函数名()注意:只要函数名后跟了括号,函数会立即执行一次,既 被调用一次
示例2:
带有参数的函数的定义
def mymax(a,b):
If a>b:
print(“最大数是”,a)
else(“最大数是”,b)
a= 1#数字或字符串都可
b='abc'
mymax(a,b)
# 练习1:
# 写一个函数mysum,此函数带有两个参数x,y
# 此函数的功能是打印出两个参数的和x+y
# def mysum(x,y):
# print(x+y)
# x=5
# y=6
# mysum(x,y)
# 练习2:
# 写一个函数print_even传入一个参数n代表终止函数(不包含n)
# 打印:
# 2 4 6...n之间所有偶数:
# 函数定义格式如下:
def print_even(n):
for x in range(1,n):
if x%2==0:
print(x)
n=9
print_even(n)
函数内部有独立的运行空间,函数外部不能访问函数内的变量
示例:
def test():
此变量只能在函数内部使用,不能外部调用
只是合法的,能够调用函数外的变量y,但最好不要使用
y==200
test()
print(x)# 此时没有x这个变量,外部不能调用函数内变量x
m=test()#没有return语句返回的为None