首页 > 编程语言 >4.python-定义函数

4.python-定义函数

时间:2022-12-08 19:46:20浏览次数:36  
标签:return 定义 python rate cure print def 函数

函数

1. pycharm快捷键

Ctrl + Q 快速查看文档(能快速查看到选择的函数创建者对该函数的注释)

2. 定义

(1) 用于封装一个特定的功能,表示一个功能或者行为。

(2) 函数是可以重复执行的语句块, 可以重复调用。

(3) 设计理念:崇尚小而精,拒绝大而全

"""
    函数设计理念:
        崇尚小而精,拒绝大而全
    返回值
"""

# 需求:定义函数,实现2个数字相加
"""
def add():
    # 获取数据
    one = int(input("请输入第一个数字:"))
    two = int(input("请输入第二个数字:"))
    # 逻辑计算
    result = one + two
    # 显示结果
    print("结果是:%s" % result)

add()
"""

# 函数要细分明确它的功能,
# 如逻辑计算,还是获取数据,抑或显示结果,功能要明确
def add(one, two):
    # 逻辑计算
    result = one + two
    return result  # 返回结果    【发送】


# 接收返回值     【接收】
data = add(2, 5)
print(data)

 

3. 作用

将功能的做法与用法分离

提高代码的可重用性和可维护性(代码层次结构更清晰)。

4. 基础语法

4.1 定义函数

 (1) 语法

def 函数名(形式参数):
    函数体

(2) 说明:

def 关键字:全称是define,意为”定义”。

函数名:对函数体中语句的描述,规则与变量名相同。

形式参数:函数定义者要求调用者提供的信息。

函数体:完成该功能的语句。

"""
    函数-参数
        函数调用者 传递给 函数定义者 传递的信息
"""

# 做法(变化)
def attack(count): # 形式参数:抽象的 
    for i in range(count): # 01234
        print("直拳")
        print("摆拳")
        print("勾拳")

# 调试F8:逐过程执行(跳过函数)
# F7:逐语句执行(进入函数)
# 用法
count = 2
attack(count) # 实际参数:具体的  循环2次
num = 3
attack(num)  # 循环3次
attack(5) # 循环5次

 

(3) 函数的第一行语句建议使用文档字符串描述函数的功能与参数(可在pycharm中按ctrl+q查看)

"""
    练习1:创建计算治愈比例的函数
    confirmed = int(input("请输入确诊人数:"))
    cure = int(input("请输入治愈人数:"))
    cure_rate = cure / confirmed * 100
    print("治愈比例为" + str(cure_rate) + "%")
"""
def calculate_cure_ratio(confirmed, cure):
    """
        计算治愈比例的函数
    :param confirmed: int类型,确诊人数
    :param cure: int类型,治愈人数
    :return: float类型,治愈比例
    """
    cure_rate = cure / confirmed * 100
    return cure_rate

rate = calculate_cure_ratio(58, 57)
print(rate)

num01, num02 = 58, 57
calculate_cure_ratio(num01, num02)
print("治愈比例为%s" % rate)

4.2 调用函数

(1) 语法:函数名(实际参数)

(2) 说明:根据形参传递内容。

4.3 返回值

(1) 定义: 函数定义者告诉调用者的结果。

(2) 语法: return 数据

(3) 说明:

return后没有语句,相当于返回 None。

函数体没有return,相当于返回None。

"""
    函数 - 返回值语法

"""

# 返回结果
def func01():
    print("func01执行了")
    return 100

def func02():
    print("func02执行了") #  函数没有返回值,相当于返回了None
    # return # 函数有返回,但没值

def func03():
    # 正常:3个循环应该有3个break结束
    # while True:
    #     while True:
    #         while True:
    #             break
    #         break
    #     break
    while True:
        while True:
            while True:
                return # 退出函数

# 接收结果
data01 = func01()
print(data01)
# 也可以不接
func01()

data02 = func02() # None
print(data02)

函数的内存分别

 

 

 

 

 

标签:return,定义,python,rate,cure,print,def,函数
From: https://www.cnblogs.com/xmgcool/p/16967077.html

相关文章

  • 纯手撸web框架、基于wsgiref模块、代码封装优化、动静态网页、jinja2模块、前端、后端
    目录推导流程纯手撸web框架基于wsgiref模块代码封装优化动静态网页jinja2模块前端、后端、数据库三者联动python主流web框架django简介django基本使用djangoapp的概念djan......
  • xiaosir_python题
    1、给三个整数,求他们中的最大值。请用你熟悉的编程语言给出题解。n1=int(input('第1个数:'))n2=int(input('第2个数:'))n3=int(input('第3个数:'))max=0ifn1>n2......
  • 记一次Ubuntu系统修改自带Python软连接的错误
    操作系统;Ubuntu20.04刚装上系统,看了一下有Python,由于是Python3.10,所有想将Python3命令修改为Python命令,感觉更顺手,于是就把 /usr/bin/目录下的Python3软连接名称修改......
  • 6.python-练习定义函数
    defprint_content(content):print(content)defget_sentence_constituent(sentence,constituent):returninput("请输入%s的%s:"%(sentence,constituent))......
  • DAX:GROUPBY函数
    DAX中的SUMMARIZE函数功能强大,但同时也很难使用。它可用于执行表之间的分组和连接,正如我们之前在分组数据一文中描述的那样。不幸的是,它在计算聚合值时存在一些众所周......
  • python5
    一、使用字符串拼接输出一个关于程序员的笑话programmer_1='程序员甲:搞IT太辛苦了,我想换行……怎么办?'programmer_2='程序员乙:敲一下回车键'print(programmer_1+programme......
  • Python判断一个变量值是否为数字数值类型
    fromnumbersimportNumberisinstance(x,Number)下面是源代码中关于Number的描述classNumber(metaclass=ABCMeta):"""Allnumbersinheritfromthisclass.......
  • ECM拨号回调函数分析
    staticvoidqcmap_init(void){if(g_data_call_sm.g_qcmap_client){if((g_data_call_sm.g_qcmap_client=get_qcmap_client(manager_qcmap_i......
  • Mybatis自定义拦截器实现自动记录操作人信息
    1.前言Mybatis有四大核心对象,分别是Executor,StatementHandler,ParamterHandler,ResultSetHandler。在很多时候,对表中的数据都需要记录插入时间,修改时间,插入人和修改人,若每......
  • python基础之条件判断语句(笔记)
    #条件判断语句(if语句)#语法:if条件表达式: #     代码块#执行的流程:if语句在执行时,会先对条件表达式进行求值判断,# 如果为True,则执行if后的语句# ......