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面向对象编程 -- 基本概念
面向对象的编程简要概括就是将要处理的问题抽象为数据和操作的集合,用类对其进行封装.其中数据和操作都称为类的属性,它们是一般是不变的. 对类进行实例化生成我们所说的对象,对象有自己的属性.对象的属性一般 ...
随机推荐
- Cocos Creator 通用框架设计 —— 网络
在Creator中发起一个http请求是比较简单的,但很多游戏希望能够和服务器之间保持长连接,以便服务端能够主动向客户端推送消息,而非总是由客户端发起请求,对于实时性要求较高的游戏更是如此.这里我们会 ...
- 古剑奇谭三已取消该页导航,B站版本无法登陆
最近登陆古剑三突然出现这个问题 怎么重开也无法登陆 最后发现是Ie设置问题 解决方法 点中间这个圆形图标打开 小娜 搜索“ie” 点击打开ie之后点右上角的小齿轮 选择“internet选项” 连接- ...
- Android OkHttp + Retrofit 下载文件与进度监听
本文链接 下载文件是一个比较常见的需求.给定一个url,我们可以使用URLConnection下载文件. 使用OkHttp也可以通过流来下载文件. 给OkHttp中添加拦截器,即可实现下载进度的监听功 ...
- 如何成长为一名合格的web前端开发工程师呢?
前端开发工程师不仅仅要掌握一些基础的美工设计等还要懂得网页设计类的HTML JavaScript和css,这三种能力缺一不可,虽不要求你特别的精通,但至少要熟练的掌握,能够运用自己所了解的这些技术和知 ...
- 初识域渗透利器Empire
Empire 是一款类似Metasploit 的渗透测试框架,基于python 编写,Empire是一个纯粹的PowerShell 后开发代理,建立在密码安全通信和灵活的架构上.Empire 实现了无 ...
- 利用hash远程登陆系统
有的时候当我们拿到系统管理员hash由于密码复杂度过高无法破解时候可以利用hash直接进行远程登录 我们用到Metasploit里面的模块 肉鸡为windwos server 2003 x32系统 1 ...
- 由浅入深:Python 中如何实现自动导入缺失的库?
在写 Python 项目的时候,我们可能经常会遇到导入模块失败的错误:ImportError: No module named 'xxx' 或者 ModuleNotFoundError: No mod ...
- JUC - ReentrantLock 的基本用法 以及 lock()、tryLock()、lockInterruptibly()的区别
ReentrantLock 与 synchronized对比 最近有在阅读Java并发编程实战这本书,又看到了ReentrantLock和synchronized的对比,发现自己以前对于Renntra ...
- java中多线程 - 多线程中的基本方法
介绍一下线程中基本的方法使用 线程睡眠sleep() Thread.sleep(毫秒);我们可以通过sleep方法设置让线程睡眠.可以看到sleep是个静态方法 public static nativ ...
- vuex状态管理安装方法
1.可以启动vue ui 手动添加vuex. 或使用 cnpm install vuex 2.使用,import vuex from “vuex” vue.use(vuex) 3.安装插件, 首先键入 ...