Python.三.1.函数

发布时间:2024年01月14日

1.函数的基本定义:

def 函数名(传入参数) :

? ? ? ? 函数体

? ? ? ? return 返回值

? ? ? 1.参数不需要可以忽略

? ? ? 2.返回值不需要可以省略

? ? ? 3.函数要先定义后使用

def fun():   # 传入参数不需要可以忽略
    print("hello world")
    # return 返回值不需要可以忽略

fun()

2.有传入参数的函数

? ?1.传入参数之间用逗号隔开,不限制个数

? ? 2.区分好什么是传入参数(形式参数),什么是实际参数

1.两数相加

def add(x,y):   # x,y为传入参数
 print(f"{x}+{y}={x+y}")
    # return 返回值不需要可以忽略

add(1,2)   #1和2是实际参数

2.体温判断正常

def checks(x):   # x为传入参数
    if x<=37.5:
        print(f"你的体温为{x},正常")
    else:
        print(f"你的体温为{x},不正常")
    # return 返回值不需要可以忽略
print("请输入你的体温")
y=float (input())
checks(y)   # y是实际参数

3.有返回值的函数

1.基本模式

函数有返回值,执行完这个函数会返回一个值,需要用变量来接收

return结果后的语句不执行

def add(x,y):   # x,y为传入参数
    print(f"{x}+{y}={x+y}")
    return x+y

result=add(1,2)   #1和2是实际参数
print(result)

2.若无return语句,也有返回值,返回值为None

def add(x,y):   # x,y为传入参数
 print(f"{x}+{y}={x+y}")
    # return 返回值不需要可以忽略
z=add(1,2)   #1和2是实际参数
print(z)
print(type(z))

4.None在if语句中相当于False

5.None可以用于定义暂无值的变量

a=None

6.函数的嵌套

在一个函数里面调用了另一个函数

def fun1():
    print("hello")
def fun2():
    fun1()
    print("world")
fun2()

7.全局变量和局部变量

局部变量

局部变量是在函数体内定义的变量,只在函数体内有效,当函数执行完了就销毁

全局变量

在函数外定义,在函数内外都可以使用的变量

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)

文章来源:https://blog.csdn.net/2301_78955442/article/details/135542986
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。