#定义一个简单的函数
def hs(x):
if x >= 0:
return x
else:
return -x
print(hs(10)) #10
将功能封装在函数内,可供随时随地重复利用
提高代码的复用性,减少重复代码,提高开发效率
def 函数名(传入参数):
函数体
return 返回值
函数的调用:
函数名(参数)
#调用函数输出欢迎语
def hesuan():
print("请出示您的健康吗以及核酸证明")
return
hesuan()
#请出示您的健康吗以及核酸证明
函数定义中,提供的x和y,称之为:形式参数,表示函数声明将要使用2个参数
参数之间使用逗号进行分隔
函数调用中,提供1和2,称之为:实际参数,表示函数执行时真正使用的参数值
传入的时候,按照顺序传入数据,使用逗号分隔
#定义2数相加的函数,通过参数接收被计算的2个数字
def ceshi1(x,y):
result = x + y
print(result)
ceshi1(1,2) #3
函数执行完成后,返回给调用者的结果。
语法:
def 函数(参数):
函数体
return 返回值
变量 = 函数(参数)
def ceshi1(x,y):
result = x + y
return result
r = ceshi1(1,2)
print(r)#3
#无return语句的函数返回值
def ceshi2():
print("hello")
result2 = ceshi2()
print(f"无返回值函数,返回的内容是:{result2}")
print(f"无返回值函数,返回的内容类型是:{type(result2)}")
#无返回值函数,返回的内容是:None
#无返回值函数,返回的内容类型是:<class 'NoneType'>
#主动返回none
def ceshi2():
print("hello")
return None
result2 = ceshi2()
#none用于if判断
def ceshi(age):
if age > 18:
print("已成年")
else:
return None
result = ceshi(16)
if not result:
print("未成年")
def fun_b():
print(2)
def fun_a():
print(1)
fun_b()
print(3)
fun_a() #1 2 3
变量作用域指的是变量的作用范围
主要分两类:局部变量和全局变量
所谓局部变量是定义在函数体内的变量,即只在函数体内部生效
指的是在函数体内,外都能生效的变量
num = 100
def test1():
print(num)
def test2():
print(num)
test1()
test2()
print(num)
使用global关键字,可以在函数内部声明变量为全局变量
num = 100
def test1():
print(num)
def test2():
global num
num = 200
print(num)
test1()
test2()
print(num)
#100
200
200
银行ATM
# 定义全局变量
money = 5000000
name = None
# 要求客户输入姓名
name = input("请输入姓名")
# 定义查询函数
def yue(show_header):
if show_header:
print("----查询余额----")
print(f"{name}你好,您的余额剩余{money}")
# 定义存款函数
def cunkuan(num):
global money # money在函数内部定义为全局变量
money += num
print("----存款----")
print(f"{name}你好,您成功存款{num}元")
# 调用yue函数
yue(False)
# 定义取款函数
def get_num(num):
global money
money -= num
print("----取款----")
print(f"{name}你好,你以成功取款{num}元")
yue(False)
# 定义主菜单
def main():
print("----主菜单----")
print(f"{name}你好,欢迎来到python银行,请选择你的操作:")
print("查询余额输入1")
print("存款输入2")
print("取款输入3")
print("退出输入4")
return input("请输入你的选择")
# 设置无限循环,确保程序不会退出
while True:
key_input = main()
if key_input == "1":
yue(True)
continue # 通过continue进入下一次循环
elif key_input == "2":
num = int(input("请输入您想要的存款金额"))
cunkuan(num)
continue
elif key_input == "3":
num = int(input("请输入您想要取款的金额"))
get_num(num)
continue
else:
print("程序推出啦")
break