python 3.x 学习笔记4(函数)
2018-06-18 00:47:29来源:未知 阅读 ()
1.编程方式分:面向对象、面向过程、函数式编程
2.区分
面向对象----》类----》class
面向过程----》过程----》def
函数式编程----》函数----》def
3.编程语言中函数的定义:
函数是逻辑结构化和过程化的一种编程方法
4.过程是没有返回值的函数
5.使用函数的优点:
1)代码可重复使用
2)代码可保持一致性
3)可扩展性
6.
当一个函数/过程没有使用return显示的定义返回值时,python解释器会隐式的返回None,所以在python中即便是过程也可以算作函数。
7.返回值
返回值的数等于0,返回None
返回值的数等于1,返回object
返回值的数大于1,返回tuple
8.参数
1)形参和实参形参:形式参数,不是实际存在的,是虚拟变量 。在定义函数体的时候使用形参,目的是在函数 调用时接受参数(形参参个数、类型与实参一一对应)
实参:实际参数,调用函数时传给函数的参数,可以是常量、变量、表达式、函数,传给形参
2)位置参数和关键字参数
标准调用:实参与形参位置一一对应;
关键字调用:位置无需固定
3)默认参数
特点:调用函数的时候,默认参数非必须传递
4)参数组
*args 接收n个位置参数,转换成元组的方式
**kwargs 接收 n个关键字参数,转换成字典的方式
9.局部变量
只在局部范围内发生作用,即只在函数内部发生作用
10.全局变量
全局变量作用域是整个程序,要把局部变量变成全局变量用global,但是不建议在函数里使用,可能会出现很严重bug
11.局部变量除了整数、字符串不能影响全局变量,像字典、元组、列表、类都可以更改,并影响到全局变量
12.递归
如果一个函数在内部调用自身,这个函数就是递归函数
13.递归特性
1)必须有一个明确的结束条件
2)每次进入更深一层递归时,问题规模相比上次递归都应有所减少
3)递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出
14.高阶函数
变量可以指向函数,函数的参数能接收变量,那么一个函数可以接收另一个函数作为参数,这种 函数就称之为高阶函数。
15.函数详解:
http://www.cnblogs.com/alex3714/articles/5740985.html
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Python 之 基础知识(二)
下一篇:python实现求最长子串长度
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash