一 函数

1.定义:完成 特定 功能的代码块,作为一个整体,对其进行特定的命名,该名字就代表函数》》工具。

2.函数的优点:1.避免代码的冗余;2.让程序结构代码更加清晰;3.让代码更加具有复用性,便于维护。

3.函数的组成:1.函数名:使用函数的依据;2.参数:完成功能的需要的条件信息。3函数体:完成功能的代码块。4.返回值:功能完成的返聩结果 5def:定义函数的关键字。

二 函数的使用

1.注意:函数必须先定义后调用。

2.使用的函数:

1.根据需求定义函数

2.通过函数名找到函数所在位置(内存地址)

3.函数名()执行函数地址中存放的所有代码块》》函数在定义时需要外界的参数,就要在调用时传入对应的参数

4.函数执行完一定有返回结果,通过return关键字将结果返回外界》》外界需要知道执行结果,用变量接收,反之只执行函数(不需要接收)即可

3.函数的各个部分可以根据需求的变化而变化

三 函数的分类

1.根据函数体分类:

1.空函数:pass来填充函数体的函数》》优提前先明确函数名,暂不明确函数体(编程中就存在一些没有函数体的函数;在开发初期可以将所有功能提前列出,用pass占位后期再填充更能体)

2.非空函数:有函数体的函数

2.根据函数参数分类:

1.无参函数:功能体不需要外界的参数

2.有参函数:功能体需要外界的参数

3.根据函数返回值分类:

1.注意:所有函数值都有返回值

2.不明确返回值:外界不需要知道内部的执行结果

3.明确返回值:外部需要知道内部执行结果

四 函数的返回值

1.在函数体中,通过return关键字返回函数的内部数据给外部

2.return的作用:

1.结束函数;2.将函数的内部数据返回给外部;

3.不明确return关键词的函数,系统在函数最末尾自动添加return,返回的是None

4.函数()   调用函数

1.拿到函数地址;2.加()执行函数体;3.得到函数执行结果

5.函数体中空return和break的区别:

1.return:在特定位置直接结束函数,但不需要告诉外界结果

2.break:为了结束函数体中的本层循环

6.有明确的返回值需求的函数:

1.python中函数本质上只有一返回值

2.可以通过返回多个值,值之间用逗号隔开,本质上返回装有多个值的元组

3.当用多个只接收函数的返回值,采用的解压赋值机制;返值个数一定要与接收值个数相等或者接收值个数为1。

Python脱产8期 Day10 2019/4/24的更多相关文章

  1. Python脱产8期 Day12 2019/4/26

    一 函数默认值的细节 1.如果函数的默认参数的默认值为变量,在所属函数定义阶段一执行就被确定为当时变量存放的值 例: a = 100def fn(num=a): print(num) # 100a = ...

  2. Python脱产8期 Day03 2019/4/15

    一 变量的命名规范 1.只能由 字母, 数字,  _, 组成. 2. 不能以数字开头 3.避免与系统关键字重名:重名不会报错,但系统的功能就被自定义的功能屏蔽掉了(严重不建议这样来做) 4.以_开头的 ...

  3. Python脱产8期 Day13 2019/4/28

    一 函数的嵌套定义 1在一个函数的内部定义另一个函数. 2.为什么有函数的嵌套定义: # 1)函数fn2想直接使用fn1函数的局部变量,可以讲fn2直接定义到fn1的内部,这样fn2就可以直接访问fn ...

  4. Python脱产8期 Day11 2019/4/25

    一 字符串比较 1.字符串比较:字符串对应的ascii进行比较 2.多个字符的字符串进行比较:从前往后逐个字符进行比较,一旦哪个位置的字符出现了大小关系就结束比较. 二 形参与实参 1.参数介绍: 函 ...

  5. Python脱产8期 Day09 2019/4/23

    内存管理 一.引用计数:垃圾回收机制的依据 1.变量的值被引用,该值的引用计数 +12.变量的值被解绑,该值的引用计数 -13.引用计数为0时就会被垃圾回收机制回收 二.引用计数会出现循环引用问题:相 ...

  6. Python脱产8期 Day08 2019/4/22

    一.三种字符串 1.普通字符串:u'以字符作为输出单位‘  #print(u‘abc’)#用于显示 2.二进制字符串:b'以字节作为输出单位’#用于传输 3.原义字符串:r‘以字符作为输出单位,原样输 ...

  7. Python脱产8期 Day07 2019/4/19

    一 数据类型的相互转化 1.哪些类型可以转换为数字类型 2.数字转换为字符串 print(str(10)) 3.字符串与列表相互转换 1.字符串转化为列表:list(字符串) 2.列表转换为字符串:' ...

  8. Python脱产8期 Day06 2019/4/18

    一 深浅拷贝 例:ls = [1, 'abc', [10]] 1.值拷贝:s1 = ls    # ls1直接将ls中存放的地址拿过来,>ls内部的值发生任何变化,ls1都会随之变化. 2.浅拷 ...

  9. Python脱产8期 Day05 2019/4/17

    数据类型的使用 一 数字类型 1.整型:int 2.浮点型:float 3.重点:数字类型直接相互转化 二字符串类型 一 1.定义:在单引号/双引号/三引号中包含一系列字符. 2.注意:可以通过引号的 ...

随机推荐

  1. vue从入门到进阶:组件Component详解(六)

    一.什么是组件? 组件 (Component) 是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功 ...

  2. TFS 2017 持续集成速记

    VS2017许多激动人 心的功能,升级!   TFS2017也升级,不支持SQL2012,升级!不过貌似开发版不能升级,好吧,开发版升2014企业版! 2017据说不支持XAML生成了,但后台菜单中还 ...

  3. concrrent类下ReentrantReadWriteLock类的原理以及使用

    1.ReentrantreadWriteLock 类的介绍 Lock接口下的子类存在 ReentrantLock子类,该子类是一个线程同步处理类:ReentrantLock类的介绍详见XXX: Loc ...

  4. git 入门教程之冲突合并

    如果足够幸运的话,团队成员互不影响,彼此相安无事,大家各自基于 master 分支的某个 commit 创建自己的分支,平时在分支上独立工作,等到一段时间后再合并 merge 到 master 分支, ...

  5. vue的diff算法

    前言 我的目标是写一个非常详细的关于diff的干货,所以本文有点长.也会用到大量的图片以及代码举例,目的让看这篇文章的朋友一定弄明白diff的边边角角. 先来了解几个点... 1. 当数据发生变化时, ...

  6. Java:JavaBean和BeanUtils

    本文内容: 什么是JavaBean JavaBean的使用 BeanUitls 利用DBUtils从数据库中自动加载数据到javabean对象中 首发日期:2018-07-21 什么是JavaBean ...

  7. 接口的绑定方案和动态SQL

    1. 接口绑定方案 MyBatis中, 提供了一套接口绑定方案. 程序员可以提供一个接口, 然后提供对应接口的一个mapper.xml文件. MyBatis会自动将接口和xml文件进行绑定. 实际上就 ...

  8. spring学习总结——介绍

    介绍:以下博客的内容都是依据<spring实战4>这本书.spring4.0 来总结. 一.spring作用 Spring可以做很多事情,它为企业级开发提供给了丰富的功能,但是这些功能的底 ...

  9. MySQL 如何查看表的存储引擎

    MySQL 如何查看表的存储引擎   在MySQL中如何查看单个表的存储引擎? 如何查看整个数据库有那些表是某个特殊存储引擎,例如MyISAM存储引擎呢?下面简单的整理一下这方面的知识点. 如果要查看 ...

  10. You (root) are not allowed to access to (crontab) because of pam configuration

    巡检发现一台Linux服务器上的作业没有如期发送邮件,登录服务器检查后发现作业并没有执行,于是检查一下crontab的设置.结果发现如下错误: [root@mylnx2 ~]# crontab -l ...