美文网首页PythonPython 进阶文集
【Python】学习笔记之函数|第6篇

【Python】学习笔记之函数|第6篇

作者: 繁华落尽丶lee | 来源:发表于2018-04-14 19:03 被阅读45次

    书籍:《Python编程:从入门到实践》
    打卡人:Owenli
    打卡日期:2018.4.14

    Python从入门到实践目录

    前言

    本篇学习编写函数。函数是带名字的代码块,用于完成具体的工作。

    函数让程序的编写、阅读、测试和修复变的容易,极大提高了代码的复用性。

    本篇中,你还会学习向函数传递信息的方式。你将学习如何编写主要任务是显示信息的函数,还有用于处理数据并返回一个或一组值的函数。最后,你将学习如何 将函数存储在被称为模块 的独立文件中,让主程序文件的组织更为有序。

    一、定义函数

    简单的函数,定义greet_user():

    这是一个最简单基本的函数。defPython定义函数的关键字,greet_user函数名,冒号后面的所有缩进行构成函数体。"""xxx"""是文档字符串的注释。要使用函数只需指定函数名和括号中的必要信息即可。

    我们可以给上面的函数添加一个参数username

    通过修改上面greet_user添加一个参数,在调用函数时,将参数放在括号中传入。
    函数的参数username是形参。在调用函数是传递的内容是实参。

    二、传递实参

    函数定义可能包含多个形参,因此函数调用中也可能包含多个实参。向函数传递实参的方式很多,例如:位置实参,实参和形参的顺序相同。关键字实参,其中实参都由变量名和值组成。还有字典和列表等。

    2.1 位置实参

    位置实参:每个实参根据顺序关联一个形参。

    举个例子:


    describe_pet('hanster', 'harry')两个实参分别对应def describe_pet(animal_type, animal_name):中的形参。
    describe_pet()可以多次使用。
    注意实参的顺序不能改变。

    2.2 关键字实参

    关键字实参 是传递给函数的名称-值对。直接将实参和形参关联起来。

    上边例子看出,顺序对关键字实参没影响。

    2.3 默认值

    编写函数时,可以给形参指定默认值。当调用函数提供实参时,使用指定的实参。否则,使用默认值。

    你可能会遇到黄色框中问题。为animal_type指定了默认值。调用函数传递的实参被视为位置实参,默认的会指定给第一个形参,所以会报错。

    三、返回值

    函数并非总是直接输出值,它可以处理一些数据,并返回一个或一组值。return语句将值返回到调用函数的代码行。

    例子:


    函数中将full_name返回给调用者。调用函数时需要提供一个变量,来存储返回的值。

    函数可以返回任何类型的值,包括字典和列表等较复杂的数据结构。

    四、传递列表

    有时向函数传递列表很有用,通过将列表传递给函数,函数可以直接访问内容。

    usernames作为参数传递给函数。

    可以在函数中修改列表的值

    在函数print_models修改completed_models列表的值。列表的内容被永久性修改。
    如何禁止函数修改列表,其实很简单,只需要传递列表的副本给函数即可。 还记得list_name[:]生成副本。

    传递任意数量的实参

    有时不知道需要接受多少个实参,Python允许从调用语句中收集任意数量的实参。

    Python使用*toppings创建一个空元组,并将接收到的所有值都封装到这个元组中。

    小结

    本篇学习了函数的基本用法,如何定义一个函数、实参和形参、返回值、参数列表等。

    打卡第六次

    相关文章

      网友评论

      • IT人故事会:做开发很累,还的学习,之前你这个我也碰到过,但是没记录谢谢了

      本文标题:【Python】学习笔记之函数|第6篇

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