python笔记5-第五章 python函数

一、函数介绍

        是组织好的,可重复使用的,用来实现特定功能的代码段。

# 使用函数来求长度
def my_len(data):
    count = 0
    for _ in data:
        count += 1
    print(f"字符串{data}的长度是{count}")
my_len(str1)
my_len(str2)
my_len(str3)

二、函数的定义

        函数的定义:

def 函数名(传入参数):

        函数体

        return 返回值

1.函数的定义语法

def 函数名():

        函数体

实际在函数定义中,传入参数和return返回值,都可不需要。

2.函数的使用步骤

        先定义函数

        后调用函数

3. 注意事项

        参数不需要,可以省略

        返回值不需要,可以省略

# 联系:自动查核酸
def check():
    print("欢迎来到黑马程序员!")
    print("请出示您的健康码以及72小时核酸证明!")
check()

三、函数的参数

# 联系:升级自动查核酸
def check(temperature):
    print(f"欢迎来到黑马程序员!请出示您的健康码以及72小时核酸证明,并配合测量体温!")
    if temperature <= 37.3:
        print(f"体温测量中,您的体温是{temperature}度,体温正常请进")
    else:
        print(f"体温测量中,您的体温是:{temperature}度,需要隔离")
check(37.1)

# 定义一个两数相加的函数
def add(x,y):
    result = x + y
    print(f"{x} + {y}的计算结果是:{result}")
# 调用函数,传入被计算的2个数字
add(1,2)

四、函数的返回值

什么是返回值:

        程序的返回值:

# 定义一个两数相加的函数
def add(x,y):
    result = x + y
    # 通过返回值,将相加的结果返回给调用者
    return result
#函数的返回值,可以通过变量去接收
r = add(5,6)
print(r)

 1.什么是函数返回值?

        函数在执行完成后,返回给调用者的结果

2.返回值的应用语法:

        使用关键字:return来返回结果

def 函数(参数...):

        函数体

        return 返回值

变量 = 函数(参数)

3.注意

        函数体在遇到return后就结束了,所以写在return后的代码不会执行。 

什么是None:

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

1.什么是None

        None是类型'NoneType'的字面量,用于表示:空的、无意义的

2.函数如何返回None

        (1)不使用return语句即返回None

        (2)主动return None

3.使用场景

        (1)函数返回值

        (2)if判断

五、函数说明文档

        函数是纯代码语言,想要理解其含义,就需要一行行的去阅读理解代码,效率比较低。我们可以给函数添加说明文档,辅助理解函数的作用。 

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

1.函数说明文档的作用是 

        对函数进行说明解释,帮助更好理解函数的功能

2.定义语法

def func(x,y):

        """

        函数说明

        :param x:形参x的说明

        :param y:形参y的说明

        :return x:返回值的说明

        """

        函数体

        return 返回值      

        :param 用于解释参数

        :return 用于解释返回值

        通过多行注释的形式,对函数进行说明解释,内容应写在函数体之前。        

六、函数的嵌套调用

"""
演示嵌套调用函数
"""
# 定义函数func_b():
def func_b():
    print("---2---")
# 定义函数func_a,并在内部调用func_b
def func_a():
    print("---1---")
    # 嵌套调用func_b
    func_b()
    print("---3---")
func_a()

1.什么是嵌套调用

        在一个函数中,调用另外一个函数

2.执行流程

        函数A中执行到调用函数B的语句,会将函数B内容全部执行,完成后,继续执行函数A的剩余内容。 

七、变量的作用域

        变量的作用域指的是变量的作用范围(变量在哪里可用,在哪里不可用),主要分为两类:局部变量和全局变量

        所谓局部变量是定义在函数体内部的变量,即只在函数体内部生效

def testA():

        num = 100

        print(num)

testA()        #100

print(num)        #报错:nam 'num' is not defined

         变量a是定义在'testA'函数内部的变量,在函数外部访问则立即报错。

         局部变量的作用:在函数体内部,临时保存数据,即当函数调用完成后,则销毁局部变量。

八、综合案例(多多ATM)

        定义一个全局变量:money,用来记录银行卡余额(默认5000000)

        定义一个全局变量:name,用来记录客户姓名(启动程序时输入)

        定义如下的函数:

                查询余额函数

                存款函数

                取款函数

                主菜单函数

        要求:

        程序启动后要求输入客户姓名

        查询余额、存款、取款后都会返回主菜单

        存款、取款后,都应显示一下当前余额

        客户选择退出或输入错误,程序会退出,否则一直运行

        主菜单效果

-------------------------------------------------------主菜单---------------------------------------------------------

                        周杰轮,你好,欢迎来到多多银行ATM,请选择操作:

                        查询余额        [输入1]

                        存款               [输入2]

                        取款               [输入3]

                        退出               [输入4]

                        请输入您的选择:

        查询余额效果

-------------------------------------------------------查询余额------------------------------------------------------

周杰轮,您好,您的余额剩余:500000元

        存、取款效果 

----------------------------------------------------------存款---------------------------------------------------------

周杰轮,您好,您的存款50000元成功

周杰轮,您好,您的余额剩余:550000元

 ----------------------------------------------------------取款---------------------------------------------------------

周杰轮,您好,您的取款50000元成功

周杰轮,您好,您的余额剩余:450000元

# 定义全局变量money name
money = 50000000
name = None
#
# data1 = 0 # 存款
# data2 = 0 # 取款
# 要求客户输入姓名
name = input("请输入您的姓名:")
# 定义查询函数
def query(show_header):
    if show_header:
        print("----------查询余额-----------")
    print(f"{name},您好,您的余额剩余:{money}元")

# 定义存款函数
def saving(num):
    global money # money在函数内部定义为全局变量
    money += num
    print("----------存款-----------")
    print(f"{name},您好,您存款{num}成功")

    #调用query函数查询余额
    query(False) # 查询余额的title不会输出


# 定义取款函数
def get_money(num):
    global money
    money -= num
    print("----------取款-----------")
    print(f"{name},您好,您取款{num}成功")
    # 调用query函数查询余额
    query(False)

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

# 设置无限循环,确保程序不退出
while True:
    keyboard_input = main()
    if keyboard_input == "1":
        query(True) # 输出标头
        continue# 通过continue继续下一次循环,一进来就是回到了主菜单
    elif keyboard_input == "2":
        num = int(input("您想要存入多少钱?请输入:"))
        saving(num)
        continue
    elif keyboard_input == "3":
        num = int(input("您想要取多少钱?请输入:"))
        get_money(num)
        continue
    else:
        print("程序退出啦")
        break  # break循环退出

  • 15
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值