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

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

运行

相关推荐
小北方城市网2 分钟前
第 6 课:云原生架构终极落地|K8s 全栈编排与高可用架构设计实战
大数据·人工智能·python·云原生·架构·kubernetes·geo
智航GIS6 分钟前
10.1 网站防爬与伪装策略
python
belldeep13 分钟前
python:pyTorch 入门教程
pytorch·python·ai·torch
YJlio14 分钟前
Registry Usage (RU) 学习笔记(15.5):注册表内存占用体检与 Hive 体量分析
服务器·windows·笔记·python·学习·tcp/ip·django
奔波霸的伶俐虫16 分钟前
redisTemplate.opsForList()里面方法怎么用
java·开发语言·数据库·python·sql
longze_723 分钟前
生成式UI与未来AI交互变革
人工智能·python·ai·ai编程·cursor·蓝湖
weixin_4380774926 分钟前
CS336 Assignment 4 (data): Filtering Language Modeling Data 翻译和实现
人工智能·python·语言模型·自然语言处理
小郭团队27 分钟前
未来PLC会消失吗?会被嵌入式系统取代吗?
c语言·人工智能·python·嵌入式硬件·架构
yesyesido27 分钟前
智能文件格式转换器:文本/Excel与CSV无缝互转的在线工具
开发语言·python·excel
王夏奇30 分钟前
python在汽车电子行业中的应用1-基础知识概念
开发语言·python·汽车