美文网首页
如何理解Python函数的深层次表述——化复杂为简单

如何理解Python函数的深层次表述——化复杂为简单

作者: KangSmit的算法那些事儿 | 来源:发表于2020-05-05 22:48 被阅读0次

    1、从简单开始

    import os
    ❶ def hello():
     ❷   """显示简单的语句"""
      ❸  print("我就是你,小花!")
    
    hello()
    

    执行结果:

    C:\Users\kangs\anaconda3\python.exe E:/PythonAlgorithms/pythonfun2020/def1.py
    我就是你,小花!
    
    进程已结束,退出代码 0
    
    

    解释上述函数结构的思想就基本了解Python函数模块的情况了,后面的我们就融会贯通,思考分析,发现更多有趣的应用就可以了,再结合相关使用说明就上船了。

    这个示例演示了最简单的函数结构。 ❶处的代码行使用关键字def 来告诉Python你要定义一个函数。 这是函数定义 , 向Python指出了函数名, 还可能在括号内指出函数为完成其任务需要什么样的信息。

    在这里, 函数名为hello() , 它不需要任何信息就能完成其工作, 因此括号是空的(即便如此, 括号也必不可少) 。

    最后, 定义以冒号结尾。紧跟在def hello(): 后面的所有缩进行构成了函数体。

    ❷处的文本是被称为文档字符串 (docstring) 的注释, 描述了函数是做什么的。 文档字符串用三引号括起, Python使用它们来生成有关程序中函数的文档。代码行print("我就是你,小花!") (见❸) 是函数体内的唯一一行代码, hello() 只做一项工作: 打印Hello! 。
    要使用这个函数, 可调用它。 函数调用 让Python执行函数的代码。 要调用 函数, 可依次指定函数名以及用括号括起的必要信息, 如❹处所示。 由于这个函数不需要任何信息, 因此调用它时只需输入hello() 即可。 和预期的一样, 它打印Hello!

    2、向函数传递信息

    只需稍作修改, 就可以让函数hello() 不仅向用户显示Hello! , 还将用户的名字用作抬头。 为此, 可在函数定义def hello() 的括号内添加username 。 通过在这里添加username , 就可让函数接受你给username 指定的任何值。 现在, 这个函数要求你调用它时给username 指定一个值。 调用hello() 时, 可将一个名字传递给它, 如下所示

    import os
    def hello(username):
        """显示简单的语句"""
        print("我喜欢你,"+username.title()+"!")
    
    hello("小花,小花")
    

    执行结果:

    我喜欢你,小花,小花!
    
    进程已结束,退出代码 0
    
    

    3、函数参数

    鉴于函数定义中可能包含多个形参, 因此函数调用中也可能包含多个实参。 向函数传递实参的方式很多, 可使用位置实参 , 这要求实参的顺序与形参的顺序相同; 也可使用关键字实参 , 其中每个实参都由变量名和值组成; 还可使用列表和字典。 下面来依次介绍这些方式。

    位置实参

    你调用函数时, Python必须将函数调用中的每个实参都关联到函数定义中的一个形参。 为此, 最简单的关联方式是基于实参的顺序。 这种关联方式被称为位置实参 。为明白其中的工作原理, 来看一个显示宠物信息的函数。 这个函数指出一个宠物属于哪种动物以及它叫什么名字, 如下所示:
    pets.py

    ❶ def describe_pet(animal_type, pet_name):
    """显示宠物的信息"""
    print("\nI have a " + animal_type + ".")
    print("My " + animal_type + "'s name is " + pet_name.title() + ".")
    ❷ describe_pet('hamster', 'harry')
    

    这个函数的定义表明, 它需要一种动物类型和一个名字(见❶) 。 调用describe_pet() 时, 需要按顺序提供一种动物类型和一个名字。 例如, 在前面的函数调用中, 实参'hamster' 存储在形参animal_type 中, 而实参'harry' 存储在形参pet_name 中(见❷) 。 在函数体内, 使用了这两个形参来显示宠物的信息。输出描述了一只名为Harry的仓鼠.

    相关文章

      网友评论

          本文标题:如何理解Python函数的深层次表述——化复杂为简单

          本文链接:https://www.haomeiwen.com/subject/owcbghtx.html