def 函数名(传入参数) :
? ? ? ? 函数体
? ? ? ? return 返回值
def fun(): # 传入参数不需要可以忽略
print("hello world")
# return 返回值不需要可以忽略
fun()
? ?1.传入参数之间用逗号隔开,不限制个数
? ? 2.区分好什么是传入参数(形式参数),什么是实际参数
def add(x,y): # x,y为传入参数
print(f"{x}+{y}={x+y}")
# return 返回值不需要可以忽略
add(1,2) #1和2是实际参数
def checks(x): # x为传入参数
if x<=37.5:
print(f"你的体温为{x},正常")
else:
print(f"你的体温为{x},不正常")
# return 返回值不需要可以忽略
print("请输入你的体温")
y=float (input())
checks(y) # y是实际参数
函数有返回值,执行完这个函数会返回一个值,需要用变量来接收
return结果后的语句不执行
def add(x,y): # x,y为传入参数
print(f"{x}+{y}={x+y}")
return x+y
result=add(1,2) #1和2是实际参数
print(result)
def add(x,y): # x,y为传入参数
print(f"{x}+{y}={x+y}")
# return 返回值不需要可以忽略
z=add(1,2) #1和2是实际参数
print(z)
print(type(z))
a=None
在一个函数里面调用了另一个函数
def fun1():
print("hello")
def fun2():
fun1()
print("world")
fun2()
局部变量是在函数体内定义的变量,只在函数体内有效,当函数执行完了就销毁
在函数外定义,在函数内外都可以使用的变量
x=2
def fun1():
print(x)
def fun2():
print(x)
fun1()
fun2()
定义了全局变量x=1,在fun1打印x内容为1
在fun2里,改变x的值后打印,为2
但在函数外打印x还是1,为什么呢?
因为在fun1和fun2的x是局部变量,只在函数体内部有用
x=1
def fun1():
print(x)
def fun2():
x=2
print(x)
fun1()
fun2()
print(x)
那如果我想在函数内部改变全局变量的值怎么办?
用global关键字,在函数体内 global x
x=1
def fun1():
print(x)
def fun2():
global x #声明它是全局变量
x=2
print(x)
fun1()
fun2()
print(x)