python中的函数的分类
函数分类:
1 不带参函数
2 带参函数
默认带参函数
关键字参数
可变参数
字典参数
3 递归函数
4 匿名函数
1-1 不带参数函数
表示该函数不需要传递参数
def func():
print("hello world!")
2-1 默认带参函数
表示该函数自带赋值了的参数,如果不传,则使用该函数的,如果传入新值,则替换函数中的值
def text(a,b=2)
print("haha")
print(a)
print(b)
ret = text(1)
print(ret)
2-2 关键字参数
表示传递参数的时候不需要分谁先传谁后传,有相对应的关键字形参进行绑定
def text1(a,b,m):
print(a)
print(b)
print(m)
ret = text1(m=2,a=1,b=3)
2-3 可变参数
表示该参数中可以传入任意多个值
def text2(a,*args):
print(a)
print(args)
ret = text2(1,3,5,8)
2-4 字典参数
表示传递参数时是以字典数据格式进行传递的
def text3(a,b,**kwargs):
print(a)
print(b)
print(kwargs) ret = text3(a =1,b =2,c=5,d=8,f=10)
3 - 1 递归函数
最大调用深度为1000次(中包含了入口函数)
满足递归函数的条件
a.必须有结束条件的标识
b.自己调用自己 def sum1(num):
if num == 1:
return 1
return sum1(num-1) + num ret = sum1(10)
print(ret)
4-1 匿名函数
# 方式一
add = lambda a, b: a + b
print(add(3, 4))
# 方式二
#add = (lambda a,b:a+b) (3,4)
add = (lambda a, b: a + b)(3, 4)
print(add)
# 参数
# 无参数
add = (lambda:100)()
print(add) # 多个返回值需要手动组包
# f1,f2 = lambda:3,4() 此为lambda未组包的表达式需要手动组包后才能往下进行
f1, f2 = (lambda: (3, 4))()
print(f1)
print(f2) # 存储模型
f4 = (lambda: ())()
f5 = (lambda: (i for i in range(10)))()
f6 = (lambda: [i for i in range(10)])()
f7 = range(10)
print(f4,f5,f6,f7)
python中的函数的分类的更多相关文章
- Python中split()函数的用法及实际使用示例
Python中split()函数,通常用于将字符串切片并转换为列表. 一.函数说明: split():语法:str.split(str="",num=string.count(st ...
- Python中利用函数装饰器实现备忘功能
Python中利用函数装饰器实现备忘功能 这篇文章主要介绍了Python中利用函数装饰器实现备忘功能,同时还降到了利用装饰器来检查函数的递归.确保参数传递的正确,需要的朋友可以参考下 " ...
- python中range()函数的用法
python中range()函数可创建一个整数列表,一般用在for循环中. range()函数语法: range(start,stop[,step]) 参数说明: star: 计数从star开始.默认 ...
- Python 中的函数
学了 Python 中的数据类型,语句,接下来就来说一下 Python 中的函数,函数是结构化编程的核心.我们使用函数可以增加程序的可读性.自定义函数时使用关键字def 函数由多条语句组成.在定义函数 ...
- python中format函数
python中format函数用于字符串的格式化 通过关键字 1 print('{名字}今天{动作}'.format(名字='陈某某',动作='拍视频'))#通过关键字 2 grade = {'nam ...
- Python中readline()函数 去除换行符
从Python中readline()函数读取的一行内容中含有换行符\n,很多时候我们需要处理不含有换行符的字符串,此时就要去掉换行符\n. 方法是使用strip()函数. 例子如下: f = open ...
- Python中int()函数的用法浅析
int()是Python的一个内部函数 Python系统帮助里面是这么说的 >>> help(int) Help on class int in module __builti ...
- 【313】python 中 print 函数用法总结
参考:python 中 print 函数用法总结 参考:Python print() 函数(菜鸟教程) 参考:Python 3 print 函数用法总结 目录: 字符串和数值类型 变量 格式化输出 p ...
- python中filter函数
python中filter()函数 filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断 ...
随机推荐
- IO流案例:1.复制多级文件夹 2.删除多级文件夹
package copy; /* 需求:复制多级文件夹 复制d:\\itcast(包含文件和子文件夹)到模块目录下 分析: d:\\itcast a.txt b.txt javaweb a.xml b ...
- C++构造函数与析构函数的解析
创建一个对象时,常常需要作某些初始化的工作,例如对数据成员赋初值. 注意,类的数据成员是不能在声明类时初始化的.如果一个类中所有的成员都是公用的,则可以在定义对象时对数据成员进行初始化.如: clas ...
- zabbix网络发现主机
1 功能介绍 默认情况下,当我在主机上安装agent,然后要在server上手动添加主机并连接到模板,加入一个主机组. 如果有很多主机,并且经常变动,手动操作就很麻烦. 网络发现就是主机上安装了age ...
- centos7上使用locate命令-文件查找
centos7上使用locate命令 小贴士:在centOS7以上的系统中使用“locate”文件查找命令,发现该命令不可用. 检查了下,原来是centos7默认没有安装该命令,在联网状态运行“y ...
- 洛谷 P1072 Hankson 的趣味题 || 打质数表的分解质因数
方法就是枚举,根据b0和b1可以大大减小枚举范围,方法类似这个http://blog.csdn.net/hehe_54321/article/details/76021615 将b0和b1都分解质因数 ...
- Vue不兼容IE8原因以及Object.defineProperty详解
Vue不兼容IE8原因以及Object.defineProperty详解 原因概述: Vue.js使用了IE8不能模拟的ECMAScript5特性. Vue.js支持所有兼容ES5的浏览器. Vue将 ...
- 什么是Servlet容器?(分析很到位)
在本文中,我写了一些关于Web服务器.Servlet容器以及它与JVM的关系的基本概念.我想表达的是,Servlet容器也仅仅不过是一个Java程序. 1. 什么是Web服务器? 想要知道什么是Ser ...
- 关于bootstrap table的server分页
首先是bootstrap初始化的表格参数: // 初始化Table oTableInit.Init = function() { $('#booksTable').bootstrapTable({ u ...
- HBase文档操作--练习篇
1.查询学生的所有信息 数据准备 var persons = [{ name:"jim", age:25, email:"75431457@qq.com", c ...
- 借教室 线段树and二分
描述 在大学期间,经常需要租借教室.大到院系举办活动,小到学习小组自习讨论,都需要向学校申请借教室.教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样. 面对海量租借教室的信息,我们自然希望 ...