day10 函数的定义及函数语法详解
"""
今日内容:
(1)函数的定义及特点
(2)函数的语法及函数的四部分
(3)函数的分类
(4)函数的调用
(5)函数的return详解 一、函数的定义
1、什么是函数?
-- 具有 特定功能 的代码块,该代码块具有一个能表示其功能的名称,后期可以通过名称调用该函数。
2、为什么要使用函数?
-- 函数对特定的功能进行了封装,可以通过函数名进行调用,避免了代码的冗余
-- 可以使代码的结构层次更加的清晰
-- 可以使代码的维护更加简单 二、函数的语法及函数的四部分
定义函数的语法: 通过关键字 def 来定义函数
def 函数名(参数列表):
'''文档注释'''
函数体
return 返回值 函数的四部分:
函数除了关键字 def 不能变之外,其余四部分都可以变化
-- 变量名:后期通过函数名进行函数的调用
-- 参数列表:函数的执行需要外部传入某些数据时,需要设置参数列表
-- 函数体:函数实现具体功能的代码块
-- 返回值:函数执行后向外界返回的结果 三、函数的分类
根据有无函数体进行分类:
--空函数:函数体使用pass进行占位,后期再进行补充
--非空函数:函数体补位空的函数 根据函数的参数列表进行分类:
-- 无参函数:当函数的执行不需要外接提供数据时,函数使用空参函数
-- 有参函数:当函数的执行需要外界提供数据时,需要在变量名后的括号中添加一个或多个参数,此时就使用有参函数 根据返回值进行分类:
--明确返回值的函数:当函数的执行结果需要提供给外界时,就需要明确函数的返回值
--不明确返回值的函数:当函数的执行结果不需要提供给外界时,不需要明确函数的返回值
--【注】:不论函数需不需要明确返回值,都会有return返回值 四、函数的调用
函数必须 先定义 后执行
函数的使用的四步骤:
-- 通过关键字定义函数
-- 通过函数名找到函数的内存地址
-- 通过加 () 调用函数,如果定义时有参数就需要传入参数,反之则不需要传入参数
-- 函数执行完毕后向外界提供返回值,如果外界需要返回值就接收
--【注】:函数使用一次就调用一次 五、函数的返回值详解
返回值得两个作用:
-- 结束函数
-- 为外界提供返回值 函数返回值的三种方式:
-- 不明确返回值:系统默认添加 return ,其返回值为 None
-- 明确空返回值:当函数不需要向外界提供函数的运行结果时,此时可以不需要明确函数的返回值
-- 明确返回值:当函数需要向外界提供运行结果时,就需要明确函数的返回值 函数返回值的个数:
--函数的返回值理论上只能有一个,当需要返回多个返回值时,此时return返回的是一个包含有多个返回值的元组,此时外界多个变量要接收返回值时会自动进行解压赋值
--函数的返回值需要解压赋值时,程序不会报错,如果需要多个变量进行解压赋值时,变量个数必须与返回值的个数相同。 """
day10 函数的定义及函数语法详解的更多相关文章
- c++模板函数声明定义分离编译错误详解
今天看到accelerated c++上有个简单的vector容器的实现Vec,就再vs2008上编译了下: ///// Vec.h #ifndef GUARD_VEC_H #define GUARD ...
- 如何在微信小程序定义全局变量、全局函数、如何实现 函数复用 模块化开发等问题详解
1.如何定义全局数据 在app.js的App({})中定义的数据或函数都是全局的,在页面中可以通过var app = getApp(); app.function/key的方式调用,不过我们没有必要 ...
- python笔记--3--函数、生成器、装饰器、函数嵌套定义、函数柯里化
函数 函数定义语法: def 函数名([参数列表]): '''注释''' 函数体 函数形参不需要声明其类型,也不需要指定函数返回值类型 即使该函数不需要接收任何参数,也必须保留一对空的圆括号 括号后面 ...
- [概念] js的函数节流和throttle和debounce详解
js的函数节流和throttle和debounce详解:同样是实现了一个功能,可能有的效率高,有的效率低,这种现象在高耗能的执行过程中区分就比较明显.本章节一个比较常用的提高性能的方式,通常叫做&qu ...
- 在函数内部定义的函数 this 指向 undefined
在函数内部定义的函数 this 指向 undefined 以下这个 this 就是指向 undefined. 但在非 strict 模式下是指向 window <script> 'use ...
- str_replace函数的使用规则和案例详解
str_replace函数的使用规则和案例详解 str_replace函数的简单调用: <?php $str = '苹果很好吃.'; //请将变量$str中的苹果替换成香蕉 $strg = st ...
- Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数
Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...
- Hadoop Hive sql语法详解
Hadoop Hive sql语法详解 Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构 化的数据文件 ...
- Java8的Stream语法详解(转载)
1. Stream初体验 我们先来看看Java里面是怎么定义Stream的: A sequence of elements supporting sequential and parallel agg ...
- Java 8系列之Stream的基本语法详解
本文转至:https://blog.csdn.net/io_field/article/details/54971761 Stream系列: Java 8系列之Stream的基本语法详解 Java 8 ...
随机推荐
- 1、roboguide新建工程文件
打开roboguide,软件界面如下,接下来讲解一下“打开和新建工程文件” 首先介绍一下新建工程文件,在工具栏中点击新建按钮或者在文件(file)的下拉菜单中点击新建工程文件(new cell),弹出 ...
- vscode 打开多个标签页
默认只打开2个,按如下设置可以支持多开: 路径C:\Users\admin\AppData\Roaming\Code\User下的settings.json添加一条配置:"workbench ...
- python面试宝典2018最新版
需要的联系,QQ:1844912514
- A/B test
A/B test https://en.wikipedia.org/wiki/A/B_testing A/B testing (bucket tests or split-run testing) i ...
- 一道B树的题目---先记一下, 还没看到B树
D
- web services + soap + wsdl 学习
什么是web services? 应用程序组件: 使用开放协议进行通信: 独立(self - contained )并可自我描述: 可通过使用UDDI来发现: 可被其他应用程序使用: XML是Web ...
- js回调地域 和 用promise解决方法
回调地狱: function3({cb3()}){ function2({cb2(cb3)}){ //cb2触发了cb3,并传值 function1({cb1(cb2)}){ //cb1触发了cb2, ...
- python——redis
redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sor ...
- php 两个数组,若键相同,则值合并
<?php $arr1 = array('9' => '4.08', '10' => '0.10', '11' => '4.08', '12' => '0.01'); $ ...
- 快速理解js中的call,apply的作用
今天被人问到js中的call,apply的区别和用途,解释了一番后,想到之前在逼乎上看到一位小伙伴生动形象的解释 本身不难理解,看下MDN就知道了,但是不常用,遇到了,还要脑回路回转下.或者时间长了, ...