• Python入门之函数的介绍/定义/定义类型/函数调用/Return


     本篇目录:

        一、 函数的介绍

        二、 函数的定义

        三、 定义函数的三种类型

        四、 函数调用的阶段

        五、 Return返回值

    ==========================================================================

    一、 函数的介绍

      1. 什么是函数?为什么要有函数?

        1.1. 具备一个特定功能的工具(类比)>>>函数

        1.2  事先准备工具的过程(类比)>>>函数的定义

        1.3 工具直接拿来使用,使用其特定的功能>>>函数的调用

        1.4 没有函数的话,程序会有以下缺点:

          a. 组织结构不清晰,可读性差

          b. 管理维护难度大,扩展性差

          c. 代码冗余,重复

    #1 定义函数
    def print_sym(sym*count):
        print(sym*count)
    
    def print_msg(msg):
        print('33[35m%s33[0m' %msg)

    二、函数的定义

      1. 函数的语法结构

        1.1 函数的结构,def是define的意思,代表定义

        def  函数名(参数1,参数2,参数3。。。):
    
        '''
    
        此处用来增加文档描述,阐述函数的功能,增加可读性
    
        '''
          代码块部分

        1.2 函数可以通过函数名直接调用,函数的命名必须能准备反应函数的功能

        1.3 代码块部分是函数功能实现的代码

        注意点:

    # 函数和变量都是占用内存地址,过程相似,但是函数并不是变量

        

    三、定义函数的三种类型

      1. 带参函数

        1.1 参数是外部调用函数的部分传入函数的值

        1.2 函数中的代码块逻辑中需要函数调用者传入值     

    def max2(x,y):
    '''
      这是一个比较大小的函数,返回较大的数
    '''
        if x >y:
            print(x)
        else:
            print(y)
    
    #调用函数max2
    max2(100, 200)
    def auth(username,pwd):
    '''
    该函数用来验证用户输入的用户名和密码
    '''
        if username == inp_name and pwd == inp_pwd:
            print('登陆成功!')
        elseprint('登陆失败')
    
    #调用auth()
    auth()
    def interactive():
    '''
    该函数用来返回用户输入的用户名和密码
    '''
        inp_name = input('Username>>>:').strip()
        inp_pwd = input('Password>>>:').strip()
        return inp_name, inp_pwd
    
    def auth(inp_name, pwd):
    '''
    该函数用来验证return的结果是元组类型
    '''
        res = interactive()
        x = res[0]
        y = res[1]
        print(x)
        print(y)

      2. 无参函数

        1.1 函数本身定义无参数,调用者也不需要传入参数

    def print():
    '''
    该函数用来展示无参函数
    '''
        print('33[35m--------------------33[0m')
        print('--------------不需要传入参数------------')

        1.2 函数体的代码逻辑不需要函数的调用者传入值

    def auth():
    '''
    该函数用来展示无参函数
    '''
        inp_name = input('Username>>>:').strip()
        inp_pwd = input('Password>>>:').strip()
        if username == inp_name and pwd == inp_pwd:
            print('登陆成功!')
        elseprint('登陆失败')
    
    #调用auth()
    auth()    

      3. 空函数

        什么事都不做的函数就是一个空函数。

        即便是一个空函数,它也会有如下属性:

        ['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__',     '__format__', '__get__', '__getattribute__', '__globals__', '__hash__', '__init__', '__module__', '__name__',     '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__',     '__subclasshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', 'func_doc', 'func_globals',     'func_name']

      

    # Tips:当我们在写程序的过程中,遇到一个卡壳的地方,我们可以在函数末尾加一个pass,暂时的跳过思维的断路的地方。

    四、 函数调用的阶段

      1. 调用守则: 必须先定义再调用

        定义阶段不执行代码,只检测语法

        

      2. 调用方式:函数名+括号

        调用阶段根据函数名找到函数的内存地址,执行函数的代码体

        

    五、 Return返回值

      1. 什么时候该有返回值

        函数代码体执行完毕后,需要返回一个结果给调用者

      2. Return返回值的三种情况

        2.1 当函数代码块中没有Return,返回为None

        

        2.2 如果返回值后跟一个值,就返回值本身

        

        2.3 return返回的值用逗号分割,返回多个值,组成一个元组(类型)

        2.4 如果函数体内有多个Return,则返回第一Return的值(Return代表函数结束)

        

        

    # return返回值没有类型限制
    # 函数内可以写多个return,但是只到第一个return就结束
    # return是函数结束的标志
  • 相关阅读:
    文佳夹之删除
    猜谜小游戏
    python小知识点
    【bzoj4516】[Sdoi2016]生成魔咒 后缀数组+倍增RMQ+STL-set
    【bzoj3362/3363/3364/3365】[Usaco2004 Feb]树上问题杂烩 并查集/树的直径/LCA/树的点分治
    【poj1741】Tree 树的点分治
    【bzoj2946】[Poi2000]公共串 后缀数组+二分
    【bzoj2157】旅游 树链剖分+线段树
    【bzoj2743】[HEOI2012]采花 树状数组
    【bzoj2705】[SDOI2012]Longge的问题 欧拉函数
  • 原文地址:https://www.cnblogs.com/JetpropelledSnake/p/8652431.html
Copyright © 2020-2023  润新知