01-函数的初体验
![](https://img-blog.csdnimg.cn/d35589be1f50413b8e21926abec46593.png)
![](https://img-blog.csdnimg.cn/1eb7726b3d6b4785a5b69bf962c14cf9.png)
for循环可以迭代数据容器。字符串也是数据容器
使用函数之前和之后
函数可以将重复性的劳动进行封装。避免重复写代码。
函数的三个特点:
1、已经组织好的
2、可重复使用
3、针对特定功能
02-函数的基础定义语法
函数的定义
冒号作为当前行的结尾。if for while 都有冒号,有了冒号之后,下面的行需要缩进。
当前阶段,只关注三个参数:def、函数名、函数体。
记住:定义完以后,要调用,函数才会工作。
03-函数基础定义练习案例
新知识,换行的操作,\n,这个记住。
04-函数的传入参数
学习目标:掌握函数传入参数的使用
![](https://img-blog.csdnimg.cn/04cd97e2e31240f38ae83c4c49a8df38.png)
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、