Python之函数

目录

1.函数的定义

2.函数的传入参数

3.None类型

4.函数的嵌套

5.变量作用域

6.函数综合案例

1.函数的定义

def 函数名(传入参数):

函数体

return 返回值

函数的调用:

函数名(参数)

注意:函数必须先定义后使用

2.函数的传入参数

传入参数的功能是:在函数进行计算的时候,接受外部(调用时)提供的数据

注意:函数定义中的参数,称之为形式参数

函数调用中的参数,称之为实际参数

练习:

复制代码
python 复制代码
def chahesuan(t):
    if t < 37.5:
        print(f"请出示您的健康码以及72小时核酸证明!\n您的体温是{t},请通行")
    else:
        print(f"请出示您的健康码以及72小时核酸证明!\n您的体温是{t},需要隔离")
chahesuan(37.4)

3.None类型

Python中有一个特殊的字面量:None,其类型是:<class 'NoneType'>

无返回值的函数,实际上就是返回了:None这个字面量,None就是没有什么实际意义的数。

用在if判断上:

在if判断中,None等同于False。一般用于在函数中主动返回None,配合if判断做相关处理。

用于声明无内容的变量:

定义变量,但暂时不需要变量有具体值,可以用None来代替

4.函数的嵌套

定义:指的是一个函数里面又调用了另外一个函数

5.变量作用域

(1)定义:变量的作用范围,主要分为两类:局部变量和全局变量

局部变量:定义在函数体内部的变量,即只在函数体内部生效

局部变量的作用:在函数体内部,临时保存数据,即当函数调用完成后,则销毁局部变量

全局变量:在函数体内、外都能生效的变量

(2)global关键字:使用global关键字可以在函数内部声明变量为全局变量

6.函数综合案例

银行的ATM系统简易版:

python 复制代码
money = 5000000
name = input("请输入您的姓名:")

def check():
    print("--------------查询余额-------------------")
    print(f"{name},您好,您现在的银行卡余额还有{money}元")

def deposit():
    print("--------------存款------------------")
    global money
    num = input("请输入您要存的钱:")
    money = money + int(num)
    print(f"{name},您好,您现在的银行卡余额还有{money}元")

def w():
    global money
    print("--------------取款------------------")
    num = input("请输入您要取的钱:")
    money = money - int(num)
    print(f"您现在的银行卡余额还有{money}元")

def manu():
    print("--------------主菜单------------------")
    print(f"{name},您好,欢迎来到银行ATM。请选择操作:")
    print("查询余额 [输入1]")
    print("存款 [输入2]")
    print("取款 [输入3]")
    print("退出 [输入4]")
    selet = input("请输入您的选择:")
    return selet

while(1):
    n = int(manu())
    if n == 1:
        check()
    if n == 2:
        deposit()
    if n == 3:
        w()
    else:
        break
相关推荐
多思考少编码16 分钟前
PAT甲级真题1001 - 1005题详细题解(C++)(个人题解)
c++·python·最短路·pat·算法竞赛
cen__y20 分钟前
Linux07(信号01)
linux·运维·服务器·c语言·开发语言
ZhengEnCi22 分钟前
M5-markconv自定义CSS样式指南 📝
前端·css·python
xingpanvip40 分钟前
星盘接口开发文档:星相日历接口指南
android·开发语言·前端·css·php·lua
ZhengEnCi43 分钟前
M4-更新日志v0.1.3-Mermaid图表支持 📝
python
guygg881 小时前
基于遗传算法的双层规划模型求解MATLAB实现
开发语言·matlab
hsjcjh1 小时前
多模态长文本协同:用Gemini 3.1 Pro镜像官网破解复杂办公场景的效率困局(国内实测方案)
python
凯瑟琳.奥古斯特1 小时前
SQLAlchemy核心功能解析
开发语言·python·flask
卷Java1 小时前
GPTQ vs AWQ vs GGUF:模型量化工具横向测评
开发语言·windows·python
charlie1145141912 小时前
嵌入式C++工程实践第20篇:GPIO 输入模式内部电路 —— 芯片是如何“听“到外部信号的
开发语言·c++·stm32·单片机