Python函数基础:说明文档(多行注释),函数嵌套调用,变量作用域(局部,全局,global关键字),综合案例

目录

说明文档(多行注释)

函数嵌套调用

变量作用域

局部和全局变量

global关键字

综合案例


说明文档(多行注释)

通过注释解释说明函数:注释可以辅助理解函数的作用。

多行注释解释说明函数格式:

def func(x, y):
""" 函数说明 :param x: 形参 x 的说明 :param y: 形参 y 的说明 :return : 返回值的说明
""" 函数体
return 返回值

注意:内容应写在函数内,函数体前。

查看函数的说明文档(要把光标放到函数名字上):

  1. 使用快捷键ctrl+q查看函数的说明文档
  2. 使用快捷键ctrl+b跳转到函数定义查看
  3. 按照ctrl键,鼠标点击函数名,可跳转至函数定义查看

PyCharm中调用函数时,可以查看该函数的说明文档。

示例如下:

复制代码
import random

"""

定义一个函数,用于计算薪资,薪资由等级(1~5)(随机)和工龄(1~30)(随机)而定

基础薪资4000,总薪资=基础薪资+等级*0.3*298+工龄*100

计算4名员工的总薪资

"""





def salary(level, work_age):

    """计算总薪资,基础薪资4000,总薪资= level\*0.3\*298 + work_age\*100 + 4000:paramlevel:等级(1\~5),随机得到:paramwork_age:工龄(1,30),随机得到:return:总薪资,总薪资= level\*0.3\*298 + work_age\*100 + 4000 """return level * 0.3 * 298 + work_age * 100 + 4000





for i in range(1, 5):

    x = random.randint(1, 5)

    y = random.randint(1, 30)

    print(f"第{i}名员工的总薪资为:{salary(x, y)}")

运行

函数嵌套调用

函数的嵌套调用:即函数中又调用了另一个函数。

示例如下:

复制代码
def func_b():

    print("----2----")





def func_a():

    print("----1----")

    func_b()

    print("----3----")





func_a()

运行

变量作用域

局部和全局变量

变量的作用域:指变量的作用范围。

局部变量:指定义在函数体内部的变量,只在函数体内部生效。

局部变量-生命周期:局部变量在函数执行时会被创建,在函数执行结束后,会被系统回收

全局变量:指定义在函数外部的变量,在函数体内和外部都能生效。

全局变量-生命周期:全局变量在代码执行时被创建,代码执行结束后销毁

注意:想要在函数中,修改全局变量,需要先使用global关键字进行声明

注意:不建议使用全局变量,因为可变范围大,程序会不好维护。

局部变量示例如下:

全局变量示例如下:

复制代码
# 全局变量num

num = 100





def test():

    print(num)





test()

print(num)

运行

global关键字

global关键字:使用global关键字,可以在函数的内部,将函数内定义的变量声明为全局变量,从而在函数内部修改全局变量,就可以同时修改外部同名的全局变量。

不使用global关键字,示例如下:

运行

使用global关键字,示例如下:

运行

综合案例

案例:模拟ATM

要求:

  1. ATM的主菜单有:查询余额,存款,取款,退出,这4项操作;
  2. 在查询余额,存款,取款后都会返回主菜单;
  3. 存款,取款后都会显示当前余额;
  4. 客户选择退出或输入错误,程序会退出,否则一直运行。
复制代码
# 案例:模拟ATM

num = 5000000

while True:

    print("你好!请操作:\n查询余额\t[输入1]\n存款\t\t[输入2]\n取款\t\t[输入3]\n退出\t\t[输入4]")

    x = int(input("请输入你的选择:"))



    if x == 1:

        print(f"你好,余额还剩{num}")

    elif x == 2:

        num2 = int(input("请输入存款金额:"))

        num += num2

        print(f"存款{num2}成功!余额为:{num}")

    elif x == 3:

        num3 = int(input("请输入取款金额:"))

        num -= num3

        print(f"存款{num3}成功!余额为:{num}")

    elif x == 4:

        print("已退出!")

        break

    else:

        print("输入错误!")

        break

注意:也可把主菜单,查询余额,存款,取款都封装成函数,这样也更清晰明了。

运行

相关推荐
abluckyboy7 分钟前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
喵手24 分钟前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
天天爱吃肉82181 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
m0_715575341 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
甄心爱学习1 小时前
【leetcode】判断平衡二叉树
python·算法·leetcode
深蓝电商API1 小时前
滑块验证码破解思路与常见绕过方法
爬虫·python
Ulyanov1 小时前
Pymunk物理引擎深度解析:从入门到实战的2D物理模拟全攻略
python·游戏开发·pygame·物理引擎·pymunk
sensen_kiss2 小时前
INT303 Coursework1 爬取影视网站数据(如何爬虫网站数据)
爬虫·python·学习
玄同7652 小时前
我的 Trae Skill 实践|使用 UV 工具一键搭建 Python 项目开发环境
开发语言·人工智能·python·langchain·uv·trae·vibe coding
Yorlen_Zhang2 小时前
Python Tkinter Text 控件完全指南:从基础编辑器到富文本应用
开发语言·python·c#