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面向对象编程 -- 基本概念
面向对象的编程简要概括就是将要处理的问题抽象为数据和操作的集合,用类对其进行封装.其中数据和操作都称为类的属性,它们是一般是不变的. 对类进行实例化生成我们所说的对象,对象有自己的属性.对象的属性一般 ...
随机推荐
- 常用的js代码片段
1.单选框/手风琴 <script> $(document).ready(function(){ $("dd").on("click",functi ...
- Java中NIO及基础实现
NIO:同步非阻塞IO 来源:BIO是同步阻塞IO操作,当线程在处理任务时,另一方会阻塞着等待该线程的执行完毕,为了提高效率,,JDK1.4后,引入NIO来提升数据的通讯性能 NIO中采用Reacto ...
- js通过方法返回对象的注意点
问题:js通过方法返回一个字面量对象和返回一个提前已经定义好的字面量对象有区别吗? 答案:有 我们先来看看第一种情况,fun1方法返回一个提前没定义的字面量对象,然后通过调用方法返回三个对象,分别是o ...
- Kotlin 中的伴生对象和静态成员
用了一段时间kotlin,越用越觉得好用,爱不释手啊,留点笔记. Kotlin 中,在类中定义的对象(object)声明,可使用 companion 修饰,这样此对象(object)就是伴生对象了.类 ...
- POWERSPLOIT-Exfiltration(信息收集)脚本渗透实战
Exfiltration模块 a) 调用Get-Keystrokes记录用户的键盘输入. 1)通过IEX下载并调用Get-Keystrokes. PS C:\Users\Administrator&g ...
- 全平台正向tcp端口转发工具rinetd的使用
Linux下做地址NAT有很多种方法.比如haproxy.nginx的4层代理,linux自带的iptables等都能实现.其实,Linux下有一个叫rinetd的工具,安装简单,配置也不复杂. 下载 ...
- 【Spring Cloud】客户端负载均衡组件——Ribbon(三)
一.负载均衡 负载均衡技术是提高系统可用性.缓解网络压力和处理能力扩容的重要手段之一. 负载均衡可以分为服务器负载均衡和客户端负载均衡,服务器负载均衡由服务器实现,客户端只需正常访问:客户端负载均衡技 ...
- oracle计算两个时间的差值(XX天XX时XX分XX秒)
在工作中需要计算两个时间的差值,结束时间 - 开始时间,又不想在js里写function,也不想在java里去计算,干脆就在数据库做了一个函数来计算两个时间的差值.格式为XX天XX时XX分XX秒: 上 ...
- Java基于回调的观察者模式详解
本文由“言念小文”原创,转载请说明文章出处 一.前言 什么是回调?回调如何使用?如何优雅的使用?本文将首先详解回调的原理,然后介绍回调的基本使用方法,最后介绍基于回调的“观察者模式”实现,演示如何优化 ...
- requests+lxml+xpath爬取豆瓣电影
(1)lxml解析html from lxml import etree #创建一个html对象 html=stree.HTML(text) result=etree.tostring(html,en ...