Python知识点入门笔记——特色数据类型(函数)
函数的定义
def 函数名(形式参数):
函数体
[return 返回值]
def是系统的关键字。
如果是自定义函数,函数名要复合变量命名规则,并且不能是系统关键字(jupyter中,打出系统关键字是绿色的)
def和return是绿色的,也就是系统关键字
函数的调用
函数的调用很简单,只要根据函数的定义形式将实际计算时的参数值传进去就行(也可能没有参数)
函数调用格式:函数名(实际参数)
函数调用写的参数是实际参数(‘实际’体现在参数是实际执行函数使用的)
函数定义写的参数是形式参数(‘形式’体现在它只是个格式和形式,真正函数执行时候还是先看实际参数)
参数的传递
函数调用时候,是将实际参数传递给形式参数
函数参数的传递方法有很多
1.参数按照位置顺序传递
2.参数按赋值传递
3.参数按照默认值传递
但是,当传入的是两个参数时,会覆盖掉默认值
4.元组类型的变长度参数传递
我们可以定义一个变长参数,可长可短,需要在参数前面加一个星号*,表示这个参数是可变长参数,当其他参数赋值完毕后,剩下的参数依次赋值给这个可变长参数
但是,注意b是元组(2,3,4),可对函数做修改
5.字典类型的变长度参数传递
在参数前加两个星号**,表示这个参数是可变长参数
是以 实参名=字典值的方式传递
字典类型变长参数传递一定是赋值形式传递进去的
当然,元组和字典形式变长参数也可能用不到
打印的是空元组和空字典。
可变参数的位置一般写在最后,不能乱了顺序,否则会报错。
函数中变量的作用域
调用dayin_outer()打印的a的值是2,这里dayin_inner()函数只是定义了,并没有调用,所以不会运行这个函数体。
匿名函数
匿名函数,匿名指的是我们不知道这个函数的名字,当我们使用的时候,用lambda来声明匿名函数,这种匿名函数是没有名字的,是临时使用的
格式:
函数对象名 = lambda形式参数:表达式
当函数较复杂时,不建议匿名函数,不好写而且结构难理解
函数的递归
比较简单,一个例子就能懂,还有比较著名的斐波拉契数也是递归的典型
Python知识点入门笔记——特色数据类型(函数)的更多相关文章
- Python知识点入门笔记——特色数据类型(元组)
元组(tuple)是Python的另一种特色数据类型,元组和列表是相似的,可以存储不同类型的数据,但是元组是不可改变的,创建后就不能做任何修改操作. 创建元组 用逗号隔开的就是元组,但是为了美观和代码 ...
- Python知识点入门笔记——特色数据类型(字典)
Python中字典是一些列键 (key) 值 (value) 对组成的,形式如下 {键1:值1,键2:值:2} 每个键值对用冒号隔开,每对之间用逗号隔开 键必须是唯一的,必须是不可变的,如字符串,数字 ...
- Python知识点入门笔记——特色数据类型(列表)
Python中提供了列表这种数据类型(类型为list)来存储多个值构成的序列 用逗号将不同数据分隔开,整体放在一个方括号[]里就创建了列表 列表中的数据类型可以是相同的,也可以是不同的 列表中还可以嵌 ...
- Python知识点入门笔记——特色数据类型(集合)
集合是一种不重复的无序集 集合用花括号来定义{} 集合和字典一样,里面的顺序是无序的,{1,2,3}和{3,2,1}是相等的 集合的元素不可重复,也就是说{1,2,2,3}是不存在的,应该写为{1,2 ...
- Python知识点入门笔记——Python的基本数据类型
Python的数字分为4种类型:整数(int).浮点数(float).布尔值(bool).复数(complex). type()函数可以知道数据的类型,如type(233)是int型,type(233 ...
- Python知识点入门笔记——基本运算和表达式
变量:Python的变量不需要单独定义,直接在赋值的过程中完成定义. 当直接运行一个没有赋值过的变量时,会报错. 当不需要某个变量时,可以用del来删除 每个变量都占据着一定的内存空间,当变量被删除了 ...
- Python知识点入门笔记——Python文件操作、异常处理及random模块使用
文件是存储在外部介质的数据集合,通常可以长久保存,前提是介质不易损坏 Python的绝对路径写法: E:\\编程学习资料\\爬取某社区高清无码大图.py E:/编程学习资料/爬取某社区高清无码大图.p ...
- Python知识点入门笔记——基本控制流程
复合赋值语句 在Python中,可以使用一次赋值符号,给多个变量同时赋值: 划重点:age_1,age_2 = age_2,age_1这种操作是Python独有的 i ...
- PYTHON 100days学习笔记006:函数和模块的使用
目录 Day006:函数和模块的使用 1.函数的作用 2.定义函数 2.1 语法 2.2 实例 2.3 函数的调用 4.函数的参数 4.1 必须参数 4.2 关键字参数 4.3 默认参数 4.4 不定 ...
随机推荐
- electron 开发记录
判断是否开发环境 安装 electron-is-dev npm install electron-is-dev // main.js const isDev = require('electron-i ...
- Tomcat8
一.Apache Tomcat 8介绍 Tomcat 8.0.0-RC3 (alpha) Released ...
- nmon 工具的使用
原文链接:https://www.ibm.com/developerworks/cn/aix/library/analyze_aix/ 引言 nmon 工具可以为 AIX 和 Linux 性能专家提供 ...
- 【Shell脚本学习23】Shell函数参数
在Shell中,调用函数时可以向其传递参数.在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数... 带参数的函数示例: #!/bin/bash funWit ...
- HttpURLConnection(http 1.1) 用法、状态码、状态描述
最近研究了java的HttpURLConnection的用法, 这里简单的做一下记录: Java中可以使用HttpURLConnection来请求WEB资源. 1. URL请求的类别 分为二类,GET ...
- WPF:鼠标长时间无操作,窗口隐藏
//设置鼠标长时间无操作计时器 private System.Timers.Timer MouseTimerTick = new System.Timers.Timer(10000); private ...
- Masonry 等间隔或等宽高排列多个控件
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...
- zabbix文档3.4-7配置
zabbix文档3.4-7配置 1 主机和主机组 典型的Zabbix主机是您希望监视的设备(服务器,工作站,交换机等). 创建主机是Zabbix中首个监控任务之一.例如,如果要监视服务器"x ...
- mysqlbench使用
看见不少人问mysqlbench怎么用,这个好像没什么困难的,基本看的懂英文就可以使用了,感觉像使用word一样. 下载地址http://www.mysql.com/products/workbenc ...
- hihoCoder #1143 : 骨牌覆盖问题·一 (斐波那契数列)
题意:我们有一个2xN的长条形棋盘,然后用1x2的骨牌去覆盖整个棋盘.对于这个棋盘,一共有多少种不同的覆盖方法呢? 思路:这是斐波那契数列啊,f[n] = f[n-1] + f[n-2],初始时 f[ ...