python——函数的基本概念
Python函数认识
数学定义
- y = f(x), y是x的函数,x是自变量。
python中的函数组成
- 由若干语句组成的语句块、函数名称、参数列表构成,函数是组织代码的最小单元
- 像一个黑盒子,我们给它数据,它可以为我们完成一定的功能
函数的作用
- 在结构化编程中,函数是对代码的最基本封装,一般都是按照功能组织一段代码
- 封装的目的是为了造各种黑盒子,可以重复使用,减少冗余代码
- 在整体的程序中代码更加地简洁美观、可读易懂
函数的分类
- 内建函数; 例如max()、 reversed()等函数
- 库函数; 例如math.ceil()等
- 自定义函数; 通过def关键字进行定义
python函数的定义
通过def关键字进行定义,如下:
def 函数名(参数列表):
函数体(代码块)
[return [返回值]] # 中括号代表可省略的东西
代码解读:
1. 函数名就是标识符, 命名要求和变量的命名要求相同,如不懂,可参考本人博客文章
2. 语句块必须缩进,缩进4个空格
3. 上面代码中如果没有return 返回值这一句,会默认自动返回None,如果是有return没有返回值,也会默认返回None
4. 定义中的参数列表称为形式参数,只是一种符号表达式(标识符),简称形参
Python函数的调用
上面的函数定义,只是声明了一个函数,它不会被执行,需要调用才会执行
调用方式:
- 在函数名后面加上小括号,如果有必要在括号内传入参数,传参方式可以参考本人博客文章
- 调用时写的参数是实际参数,是实实在在传入的值,简称实参
def fac(x, y): # fac是函数名, x, y是形式参数,简称形参
result = x * y # 代码块,函数体
return result # 返回值
final = fac(4, 5) # 这里就是函数调用,函数计算完成后,把返回值赋值给final变量
print(final) # 其实这里也是调用print函数,print函数的作用是把我们传入的final参数打印到屏幕上
代码解读:
定义时:
- 定义了一个函数,函数名是fac,能接受2个参数
- 该函数计算的结果会作为return的返回值返回
调用时: - 用函数名fac后面加一个括号和两个参数进行调用,等号右边函数进行计算,计算结果通过return返回,赋值给变量final
- 定义函数要在调用之前,就像使用变量一样,使用时肯定已经定义过了
- 函数是可调用对象,可以用内建函数callable()进行测试
如果需要了解函数参数,可参考本人博客文章
python——函数的基本概念的更多相关文章
- Python函数-闭包的概念
一个函数和它的环境变量合在一起,就构成了一个闭包(closure).在Python中,所谓的闭包是一个包含有环境变量取值的函数对象.环境变量取值被保存在函数对象的__closure__属性中.比如下面 ...
- Python入门笔记(18):Python函数(1):基础部分
一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...
- python函数的参数传递问题---传值还是传引用?
摘要:在python中,strings, tuples, 和numbers是不可更改的对象,而list,dict等则是可以修改的对象.不可更改对象的传递属于传值,可更改对象属于传引用.想要在函数中传递 ...
- Python学习:基本概念
Python学习:基本概念 一,python的特点: 1,python应用场景多;爬虫,网站,数据挖掘,可视化演示. 2,python运行速度慢,但如果CPU够强,这差距并不明显. 3,严格的缩进式编 ...
- python函数(3):装饰器
昨天学了很多函数方面的概念和知识其中有一个闭包的函数.很多人都对闭包的作用不是很清楚,今天我们就来认识一个新的知识点装饰器.它就是闭包函数的一个经典应用. 预习: 编写装饰器,为多个函数加上认证的功能 ...
- Python 函数返回值
本章详细介绍 返回值: 0x 00 返回值简介 0x 01 指定返回值与隐含返回值 0x 02 return 语句位置与多条 return 语句 0x 03 返回值类型 0x 04 函数嵌套 0x 0 ...
- python——函数
python--函数 1.介绍: 在过去的十年间,大家广为熟知的编程方法无非两种:面向对象和面向过程,其实,无论哪种,都是一种编程的规范或者是如何编程的方法论.而如今,一种更为古老的编程方式:函数式编 ...
- Python函数属性和PyCodeObject
函数属性 python中的函数是一种对象,它有属于对象的属性.除此之外,函数还可以自定义自己的属性.注意,属性是和对象相关的,和作用域无关. 自定义属性 自定义函数自己的属性方式很简单.假设函数名称为 ...
- python面向对象编程 -- 基本概念
面向对象的编程简要概括就是将要处理的问题抽象为数据和操作的集合,用类对其进行封装.其中数据和操作都称为类的属性,它们是一般是不变的. 对类进行实例化生成我们所说的对象,对象有自己的属性.对象的属性一般 ...
随机推荐
- Failure to transfer org.springframework:spring-jcl:jar:5.0.7.RELEASE from
错误信息: Failure to transfer org.springframework.boot:spring-boot-maven-plugin:pom:1.5.4.RELEASE from h ...
- Redis 3.0中文版学习(二)
网址:http://wiki.jikexueyuan.com/project/redis-guide/entry-to-master-middle.html 1.Redis的列表: 采用链表的实现方法 ...
- [NOIp2014] luogu P1351 联合权值
哎我博 4 了. 题目描述 无向连通图 GGG 有 nnn 个点,n−1n−1n−1 条边.点从 111 到 nnn 依次编号,编号为 iii 的点的权值为 WiW_iWi,每条边的长度均为 111 ...
- 【Redis】Could not get a resource from the pool 实乃集群配置问题
先说些题外话~自上次确诊为鼻窦炎+过敏性鼻炎到现在已经一个月了,最初那会,从下午到晚上头疼难忍.大概是积劳成疾,以前流鼻涕.打喷嚏的时候从来没有注意过,结果病根一下爆发. 关键在于锁定问题,开始治疗一 ...
- React Diff算法一览
前言 diff算法一直是React系统最核心的部分,并且由于演化自传统diff,使得比较方式从O(n^3)降级到O(n),然后又改成了链表方式,可谓是变化万千. 传统Diff算法 传统diff算法需要 ...
- python中生成器与迭代器
可迭代对象:一个实现了iter方法的对象是可迭代的 迭代器:一个实现了iter方法和next方法的对象就是迭代器 生成器都是Iterator对象,但list.dict.str虽然是Iterable(可 ...
- 2、Struts2开始深入
一.Struts2的配置文件加载顺序 1 .进入过滤器[StrutsPrepareAndExecuteFilter]跟代码,可以看到对应的文件加载顺序 进入StrtsPrepareAndExecute ...
- Yii2.0教程应用结构篇 —— 入口脚本
入口脚本是应用启动流程中的第一环,一个应用(不管是网页应用还是控制台应用)只有一个入口脚本.终端用户的请求通过入口脚本实例化应用并将将请求转发到应用. Web 应用的入口脚本必须放在终端用户能够访问的 ...
- dubbo初学采坑记
写在前面的话 dubbo 现在是apache组织旗下的项目,相信国内也有很多人使用.最近一个同事离职,我就接手了他的项目.远程通讯就是用的dubbo框架来实现的.使用Intelij idea 写了一个 ...
- QLable 显示图片
1,各种对就是不显示,因为路径中有其它符号如\n\r什么的 QStringList FileOpeartion::PathCombine (const QString strPath, QString ...