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 ...
随机推荐
- Python--day13(函数嵌套定义,global、nonlocal、闭包函数、装饰器)
今日主要内容 1. 函数的嵌套定义 2. global.nonlocal关键字 3. 闭包及闭包的应用场景 4. 装饰器 1. 函数的嵌套定义 概念:在一个函数的内部定义另一个函数 为什么要有 ...
- IP防护等级简介
IP(INGRESS PROTECTION)防护等级系统是由IEC(INTERNATIONAL ELECTROTECHNICAL COMMISSION)所起草,将电器依其防尘防湿气之特性加以分级 IP ...
- js 前端常用排序算法总结
(冒泡排序.快排顺序.选择排序.插入排序.归并排序) 下面是前端比较常用的五个算法demo: 冒泡算法:比较两个相邻的数值,if第一个>第二个,交换他们的位置元素项向上移动至正确的顺序. fun ...
- 360大牛:全面解读PHP面试
让大家了解基本面试流程和面试的核心要求以及意义是什么并理解PHP面试考点主要以基础为核心,说明PHP面试考察范围. 有需要联系:QQ:1844912514
- echarts 页面对应更改
---legrnd legend: { icon: "circle", orient: 'vertical', right: 10, top: 20, bottom: 20, da ...
- JDK源代码学习-基础类
一.概述 1.Java,是一套语言规范,例如规定了变量如何定义.控制语句如何写等,提供基本的语法规范.JDK是java自带的一套调用组件,是对基本java语法规范的进一步封装,jdk中都是使用java ...
- python学习日记(模块导入)
什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.p ...
- JSON.stringify的三个参数(转载)
前段时间勾股有提到stringify是支持三个参数,刷新的了我的认知,后来查到文档才发现还真的是支持三个参数的. 参考资料: stringify stringify方法顾名思义,就是把JSON序列换, ...
- k-均值聚类算法1
一.k-means算法: 1.优缺点: 优点:容易实现. 缺点:可能收敛到局部最小值,在大规模数据集上收敛较慢. 2.伪代码描述:
- (十一)QPainter绘图, QPixmap,QImage,QPicture,QBitmap
#include "widget.h" #include "ui_widget.h" #include <QPainter> #include &l ...