【已更完:函数】【最新!黑马程序员Python自学课程笔记】课上笔记+案例源码+作业源码

发布时间:2024年01月22日

第四章-函数

4.1函数的初体验

# name="itheima"
# length=len(name)
# print(length)
str1="hahahahah"
str2="niuniuniu"
str3="python"
count=0
for i in str1:
    count+=1
print(f"字符串{str1}的长度是:{count}")

count=0
for i in str2:
    count+=1
print(f"字符串{str2}的长度是:{count}")

count=0
for i in str3:
    count+=1
print(f"字符串{str3}的长度是:{count}")
# 可以使用函数来优化过程
def my_len(data):
    count=0
    for i in data:
        count+=1
    print(f"f字符串{data}的长度是{count}")
my_len(str1)
my_len(str2)
my_len(str3)

4.2函数的基础定义语法

# def 函数名(传入参数):
#     函数体
#     return 返回值
def say_hi():# 定义一个函数,输出相关信息
    print("Hi,I am niuma ")

# 调用函数,让定义的函数开始工作
say_hi()

4.3函数基础定义练习案例

def ShowInfo():
    print("欢迎来到黑马程序员!\n请出示您的健康码以及72小时核酸证明!")# \n表示 换行
ShowInfo()

4.4函数的传入参数

def add(x,y,z):# 参数的数量不受限制,2,3,4,5个都可以
    result=x+y+z
    print(f"{x}+{y}+{z}的结果是{result}")
add(5,6,7)

4.5函数的参数练习案例

def test(x):
    if x>=37.5:
        print(f"欢迎来到黑马程序员!请出示您的健康码和72小时核酸证明,并配合测量体温!\n体温测量中,您的体温是:{x}度,需要隔离!")
    else:
        print(f"欢迎来到黑马程序员!请出示您的健康码和72小时核酸证明,并配合测量体温!\n体温测量中,您的体温是:{x}度,体温正常请进!")
test(37.9)

4.6函数的返回值定义语法

def add(a,b):
    result=a+b
    return result
    print("我完事了")# return后,就不会执行了!
# 函数的返回值。可以通过变量去接收
r=add(5,6)
print(r)

4.7函数返回值之None类型

# 无return语句的函数返回值
def say_hi():
    print("您好呀")
result=say_hi()
print(f"无返回值函数,返回的内容是:{result}")
print(f"无返回值函数,返回的内容类型是:{type(result)}")


# 主动返回None的函数
def say_hi2():
    print("您好呀")
    return None
result=say_hi2()
print(f"无返回值函数,返回的内容是:{result}")
print(f"无返回值函数,返回的内容类型是:{type(result)}")


# None在if中的使用
def check_age(age):
    if age>18:
        return "success"
    else:
        return None
result=check_age(16)
if not result:
    # 进入if表示result是None值,也就是false
    print("未成年不可以进入")


# None用于声明无初始内容的变量
name=None

4.8函数的说明文档

def add(x,y):
    """
    add 函数可以接收两个参数,进行两数相加的功能
    :param x: 形参x表示相加的其中一个数字
    :param y: 形参y表示相加的另外一个数字
    :return: 返回值是两数相加的结果
    """
    result=x+y
    print(f"f两数相加的结果是:{result}")
    return result
add(5,6)

4.9函数的嵌套调用

def fuc_b():
    print("2222")
def fun_a():
    print("1111")
    fuc_b()

    print("3333")
fun_a()

4.10变量在函数中的作用域

# def test_a():
#     num=100
#     print(num)


# global关键字,在函数内声明变量为全局变量
num=200
def test_a():
    print(f"test_a:{num}")
def test_b():
    global num # 注意!!!设置内部定义的变量为全局变量
    num=500 # 原是 局部变量,但是 此时此刻变为全局变量了
    print(f"test_b:{num}")
test_a()
test_b()
print(num) # 由于上方有一行代码:global num。因此,此时局部变量变为全局变量,参照500执行

4.11函数综合案例

Money=5000000
name=input("请您输入姓名:")
# 查询余额函数
def check_money(show_header):
    if show_header:
        print("----------查询余额----------")
    print(f"{name},您好,您的当前余额为{Money}元")

# 存款函数
def input_money(inmoney):
    global Money
    Money=Money+inmoney
    print("----------存款----------")
    print(f"您已经成功存入{inmoney}元")
    check_money(False)



# 取款函数
def output_money(outmoney):
    global Money
    Money=Money-outmoney
    print("---------取款-----------")
    print(f"{name},您好,您已经成功取出{outmoney}元")
    check_money(False)

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


while True:
    keyword_input=main()
    if keyword_input=="1":
        check_money(True)
        continue
    elif keyword_input=="2":
        inmoney=float(input("您想存入多少钱?请输入:"))
        input_money(inmoney)
        continue
    elif keyword_input=="3":
        outmoney=float(input("您想要取多少钱?请输入:"))
        output_money(outmoney)
        continue
    else:
        print("程序退出")
        break
文章来源:https://blog.csdn.net/m0_57495651/article/details/135738359
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。