本节内容:

1.什么是函数

2.函数定义,函数名,函数体及函数的调用

3.函数的返回值

4.函数的参数

一.什么是函数

函数:对代码块和功能的封装和定义

定义一个事情或者功能.等到需要的时候直接去用,那么这里定义的东西就是函数.

二.函数的定义,函数名,函数体以及函数的调用

我们使用def关键字来定义函数,函数的定义语法如下:

def 函数名():

  函数体

这里的函数名的命名规则与使用和变量的基本一样.

函数体: 就是函数被执行之后要执行的代码

函数的调用:使用函数名就可以调用函数,写法:函数名(),这个时候函数的函数体就会被执行

三.函数的返回

执行玩函数之后,我们可以使用return来返回结果.

函数中return的使用:

1.函数中遇到return,此函数结束,不再继续执行.

2.给函数的调用者一个访问结果,函数的返回值可以有多个结果

总结:

1.遇到return.此函数结束,函数后面的东西将不会再执行

2.return返回值

关于返回值:

如果return后面什么都不写,或者干脆不写return,那么返回的就是None

如果return后面写了一个值.则调用者可以接收一个结果

如果return后面写了多个结果,则调用者可以接收一个tuple,调用者可以直接解构成多个变量

四.函数的参数

参数,函数在调用的时候指定具体的一个变量的值,就是参数,语法:

def 函数名(参数列表):

  函数体

关于参数:

1.形参:写在函数声明的位置的变量叫形参,形式上的一个参数,表示这个函数需要xxx

2.实参:在函数调用的时候给函数传递的值,叫实参,实际上执行的时候给函数传递的信息,表示给函数xxx

3.传参:给函数传递信息的时候将实际参数交给形式参数的过程被称为传参.

参数的分类:

首先我们看实参

4.1.1位置参数

在传参过程中,系统会默认按照位置把实参赋值到形参.

4.1.2关键字参数

位置参数好不好呢?如果是少量的参数还算OK,没有问题.但是如果韩在定义的时候参数非常多怎么办?

程序员必须记住我有哪些参数,而且还要借助没个参数的位置,否则函数就不能正常调用了.那怎么办?python提出阿勒

一种关键字参数.我们不需要记住没个参数的位置,只需要记住没个参数的名字就可以了

4.1.3混合参数

可以把上面两张参数混合使用,也就是说在调用函数的时候即可以给出从未知参数,也可以知道管子参数.

注意:在使用混合参数的时候,关键字参数必须在位置参数后面

综上:在实参的角度来看,分为三种:

1.位置参数

2.关键字参数

3.混合参数,位置参数必须在关键字参数前面

4.2在形参角度看.一共分为三种.今天我们学习两种

4.2.1位置参数,按照位置来赋值,到目前位置,我们编写的函数都是这种

4.2.2默认值参数.在函数声明的时候,就可以给出函数参数的默认值,在调用的时候就可以给出具体的值,也可以不给值,使用默认值

注意:必须先声明位置参数,才能声明默认值参数.

综上:在形参的角度看:

1.位置参数

2.默认值参数(大多数传进来的参数都是一样的,一般用默认参数)

python学习 day09打卡 初识函数的更多相关文章

  1. python学习 day15打卡 初识面向对象

    本节主要内容: 1.面向对象和面向过程 2.面向对象如何编写 3.面向对象和面向过程的对比 4.面向对象的三大特征 一.面向对象和面向过程(重点理解) 1.面向过程:一切以事物的流程为核心.核心是&q ...

  2. Python学习day09 - Python进阶(3)

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  3. Python学习【第九篇】函数

    函数 函数是什么? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 在学习函数之前,一直遵循:面向过程编程,即:根据业务逻辑从上而下实现功能,其往往用一段代码来实现指定功能,开发过 ...

  4. Python基础之文件的初识函数

    初识函数函数定义:定义一个事情或者功能. 等到需要的时候直接去用就好了了. 那么这里定义的东西就是一个函数即函数: 对代码块和功能的封装和定义1.1常用形式: def 函数名(): 函数体1.2 函数 ...

  5. Python学习笔记014——迭代工具函数 内置函数enumerate()

    1 描述 enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. 2 语法 enumerate(sequ ...

  6. python学习笔记十——模块与函数

    第五章 模块与函数 5.1 python程序的结构 函数+类->模块              模块+模块->包                 函数+类+模块+包=Python pyth ...

  7. Python学习笔记(九)—— 函数

    一.函数调用: 1.python内部函数查询:http://docs.python.org/3/library/functions.html#abs 2.注意调用函数的参数个数和类型. 3.函数名其实 ...

  8. Python学习系列----第四章 函数

    4.1 函数定义   函数是python中重要的工具.函数用关键字 def 来定义.def 关键字后跟一个函数的标识符名称,然后跟一对圆括号.圆括号之中可以包括一些变量名,该行以冒号结尾.接下来是一块 ...

  9. Python学习进程(6)函数

        函数最重要的目的是方便我们重复使用相同的一段程序.     (1)函数的定义: 函数定义的简单规则: 1.函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(): 2.任何传入参数和 ...

随机推荐

  1. tensorflow学习6

    g_w1 = tf.get_variable('g_w1', [z_dim, 3136], dtype=tf.float32, initializer=tf.truncated_normal_init ...

  2. 读QT5.7源码(三)Q_OBJECT 和QMetaObject

    Qt meta-object系统基于三个方面:  1.QObject提供一个基类,方便派生类使用meta-object系统的功能:  2.Q_OBJECT宏,在类的声明体内激活meta-object功 ...

  3. JDBC-day01

    #JDBC Java DataBase Connectivity Java数据库连接 JDBC提供了一套和数据库交互 ###为什么要使用JDBC 因为Java语言在工作中有可能会有需求去访问各种数据库 ...

  4. [转载]WeeksInAYear、WeeksInYear、DaysInAYear、DaysInAMonth、DaysInYear、DaysInMonth - 获取指定年月的周、日数

    DateUtils.DaysInYear(); DateUtils.DaysInMonth(); DateUtils.DaysInAYear(); DateUtils.DaysInAMonth(); ...

  5. amoeba读写分离

    第一单元   高性能mysql读写分离的实现 5.1      mysql读写分离 5.1.1  mysql读写分离概述 5.1.2  mysql读写分离原理 5.2      mysql读写分离配置 ...

  6. SQLServer 比like好用的函数 charindex

    比如查找用户名包含有"c"的所有用户, 可以用 use mydatabase select * from table1 where username like'%c%" ...

  7. android学习:apiDemos导入时R.java无法生成的问题

    准备导入apiDemos研究一下别人的代码,发现导入后不能正常build,无法生成R.java,发现res/layout/progressbar_2.xml里有几个 <ProgressBar a ...

  8. TensorFlow 生成 .ckpt 和 .pb

    原文:https://www.cnblogs.com/nowornever-L/p/6991295.html 1. TensorFlow  生成的  .ckpt 和  .pb 都有什么用? The . ...

  9. MFC限制edit控件的字符输入长度

    一. 1.Edit 控件添加EN_CHANGE事件 #define MAX_SIZE 200 void CMyDlg::OnChangeEditFeed() { // TODO: 如果该控件是 RIC ...

  10. 牛客网校招全国统一模拟笔试(二月场)- Java方向

    1.请问下面关于与wait()一起使用的方法notify()的各种陈述,哪个正确? A 多个线程同时等待某个条件,则只有等待时间最长的哪个线程被通知 B 多个线程同时等待某条件,则没有办法预测哪个线程 ...