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
相关推荐
AI_Claude_code4 分钟前
ZLibrary访问困境方案二:DNS-over-HTTPS/TLS配置与隐私保护实践
爬虫·python·网络协议·http·网络安全·https·网络爬虫
Shadow(⊙o⊙)5 分钟前
C语言学习中需要的额外函数
c语言·开发语言·学习
还是大剑师兰特6 分钟前
pinia-plugin-persistedstate详解与Vue3使用示例
开发语言·javascript·ecmascript
方便面不加香菜8 分钟前
C++ 类和对象(二)
开发语言·c++
至此流年莫相忘9 分钟前
数据库迁移工具——Alembic
python
@大迁世界10 分钟前
20.“可复用组件”具体指的是什么?如何设计与产出这类组件?.
开发语言·前端·javascript·ecmascript
有味道的男人10 分钟前
电商效率翻倍:用 Open Claw 对接 1688 接口,快速实现图片选品 + 货源监控
java·开发语言·数据库
froginwe1111 分钟前
Chart.js 雷达图:深入解析与实际应用
开发语言
枫叶丹412 分钟前
【HarmonyOS 6.0】屏幕管理新特性:多屏坐标转换详解
开发语言·华为·harmonyos