第五章——函数

01-函数的初体验

for循环可以迭代数据容器。字符串也是数据容器

使用函数之前和之后

函数可以将重复性的劳动进行封装。避免重复写代码。

函数的三个特点:

1、已经组织好的

2、可重复使用      

3、针对特定功能

02-函数的基础定义语法

函数的定义

冒号作为当前行的结尾。if for while 都有冒号,有了冒号之后,下面的行需要缩进。

当前阶段,只关注三个参数:def、函数名、函数体。

记住:定义完以后,要调用,函数才会工作。

03-函数基础定义练习案例

新知识,换行的操作,\n,这个记住。

04-函数的传入参数

学习目标:掌握函数传入参数的使用


05-函数的参数练习案例

注:和循环没有关系的输出写到循环外边,和判断条件没有关系的输出,写到判断条件外边。

06-函数的返回值定义语法

学习目标:1、掌握函数返回值的作用

                  2、掌握函数返回值的定义语法

可不可以理解为:这个返回值是隐形的print,只是暂时没有输出,而是让下面调用函数时去输出这个内容。这里暂时把计算结果保存起来。

函数体遇到return,代表函数结束。不要把代码写在return后边。

07-函数返回值之None类型

前两个用的比较多,第三个用的少。

08-函数的说明文档

 

对函数的五大部分,都进行说明,方便理解函数。

对参数和返回值的说明。

09-函数的嵌套调用

10-变量在函数中的作用域

global关键字,能够让局部变量改为全局变量。(这句话应该是不对的)

补充:全局变量是在函数外部定义的变量,可以在整个程序中访问。在函数内部使用全局变量时,需要使用global关键字进行声明。

11函数综合案例

# 定义全局变量
money = 5000000
# name = None
# 要求客户输入姓名
name = input("请输入您的姓名:")


# 定义查询函数
def query(show_header):  # 用参数show_header来控制第一个print是否输出,布尔值为假。参数控制内容输出,参数可以判断真假,然后再确定是否输出。
    if show_header:
        print("------------余额查询-------------")
    print(f"{name},您好,您的余额剩余:{money}")


# 定义存款函数
def saving(num):
    global money  # money在函数内部定义为全局变量??不是太理解
    money += num
    print("-------存款---------")
    print(f"{name},您好,您存款{num}元成功")
    # 调用query函数查询余额
    query(False)


# 定义取款函数
def draw(num):
    global money
    money -= num
    print("-------取款---------")
    print(f"{name},您好,您取款{num}元成功")
    query(False)


# 定义主菜单函数
def main():
    print("--------主菜单---------")
    print(f"{name},您好,欢迎来到黑马ATM,请选择操作:")
    print("查询余额\t【输入1】")  # 一个反斜杠t还对不奇,可以用两个来对齐。
    print("存款\t\t【输入2】")
    print("取款\t\t【输入3】")
    print("退出\t\t【输入4】")
    return input("请输入您的选择:")


# 无限循环不退出
while True:
    keyboard_input = main()
    if keyboard_input == "1":
        query(True)   # 查询,使用True
        continue     # 通过continue继续下一次循环,一进来就是回到主菜单。(也就是结束本次循环,重新回到循环的开始,从main重新执行)
    elif keyboard_input == "2":
        num = int(input("您想要存入多少钱?请输入:"))
        saving(num)
        continue
    elif keyboard_input == "3":
        num = int(input("您想要取多少钱?请输入:"))
        draw(num)
        continue
    else:
        print("程序已退出")
        break


    # 无限循环不退出
while True:
    # while(true)作为无限循环,经常在不知道循环次数的时候使用,并且需要在循环内使用break才会停止。
    # python while循环语句的一般形式是while后面跟一个条件表达式,当该表达式的返回值为True,或经过布尔转换会返回True,
    # 比如1转换为bool布尔类型会为True,那么就执行一次while的循环。
    # while True,即直接把表达式设置为True,那么无论如何,代码都将进行一次while的循环,直到遇到退出的条件,而且如果没有退出循环的条件,那么将无限循环下去。
    # 使用while True,一般会在循环的代码块(下方的code_block)中设置一个触发退出循环的条件,避免无限无限循环下去。


    keyboard_input = main()
    if keyboard_input == "1":
        query(True)  # 查询,使用True
        continue  # 通过continue继续下一次循环,一进来就是回到主菜单。(也就是结束本次循环,重新回到循环的开始,从main重新执行)
    elif keyboard_input == "2":
        num = int(input("您想要存入多少钱?请输入:"))
        saving(num)
        continue
    elif keyboard_input == "3":
        num = int(input("您想要取多少钱?请输入:"))
        draw(num)
        continue
    else:
        print("程序已退出")
        break  # while True 语句中一定要有结束该循环的break语句,否则会一直循环下去的。
        # 总结:
        # 全局变量和局部变量是Python中两种不同的变量类型。
        # 全局变量作用于整个程序,而局部变量仅在特定的函数或代码块中起作用。
        # 在函数内部使用全局变量时,需要使用global关键字进行声明,而在嵌套函数中使用外部函数的变量时,可以使用nonlocal关键字进行声明。
        # 了解全局变量和局部变量的区别及其使用方法,有助于编写更加灵活、可维护的Python代码。

总结:其实我觉得,本章的话,就把最后边的这个案例练习几次就可以了。

复习记录

1、23年10月18号

2、24年4月27号

3、

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值