python中的函数def和函数的参数
'''
函数:
1、减少代码重用性
2、易维护
3、可扩展性强
4、类型function
定义函数:
def 函数变量名():
函数的调用:
1、函数名加括号
2、函数如果没被调用,不会去执行函数内部的代码
函数的返回值:
1、函数如果没有return 默认返回None(add()=None)
2、函数通过 关键字 return 返回 值
3、函数执行时,遇到return,退出函数的执行,并返回结果
4、函数 return 能 return多个值, 把多个值 组成一个 元祖返回
l = [1,2,2,22,2,2,2,]
def add():
s = 0
return [1, 2, 3, 4,5 ,6 , 7, format, False, {}, (), [], "", None]
c = add()
'''
'''
函数的参数:
形参:
位置参数:
1、函数定义位置参数后,调用函数时,有几个位置参数,就得传几个实参
2、位置参数与实参 一一对应
默认参数(给予初始值):
1、函数在定义形参时,指定参数的 值 叫默认参数
2、调用函数时,默认参数可以不用传
3、调用函数时,如果传入 值 给默认参数,那默认参数的值 就是 传入的 值
4、默认参数必须在 位置参数的右边(实参中也一样,但是顺序可变。如:)
def func(x,y,z,l):
return(x+y+z+l)
print(func(1,2,l=3,z=8)) 打印结果为14
可变长参数:
*args:
1、能接受任意类型参数,把接收的参数组成一个元祖()
def func(x,*args): 打印结果:
print(x) 1
print(args) ([1,2,3],)
func(1,[1,2,3])
2、*iterable(能被for循环的对象)
*[1,2,3], 会把列表for循环后,把循环出的参数一个个的给到args,如下:
def func(x,*args): 打印结果:
print(x) 1
print(args) (1,2,3)
func(1,*[1,2,3])
3、调用函数时,args可以不用传(args默认为元祖())
def func(x,*args): 打印结果为:
print(x) 1
print(args) ()
func(1)
**kwargs:
1、把接收的参数组成一个字典{}(一般参数为赋值表达式)
def func(x,**kwargs): 打印结果为:
print(args) {'c': 3, 'b': 2, 'a': 1}
func(1,a=1,b=2,c=3)
2、**{"2":2, "3":3, "hello":[]} 循环字典的 key value,组成键值对 给到kwargs
def func(x,**kwargs): 打印结果为:
print(kwargs) {'2': 2, '3': 3, 'hello': []}
func(1,**{"2":2, "3":3, "hello":[]})
3、调用函数时,kwargs可以不用传(默认为{})
def func(x,**kwargs): 打印结果为:
print(x) 1
print(kwargs) {}
func(1)
'''
python中的函数def和函数的参数的更多相关文章
- Python中的__init__()和__call__()函数
Python中的__init__()和__call__()函数 在Python的class中有一些函数往往具有特殊的意义.__init__()和__call__()就是class很有用的两类特殊的函数 ...
- python中实现延时回调普通函数示例代码
python中实现延时回调普通函数示例代码 这篇文章主要给大家介绍了关于python中实现延时回调普通函数的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的 ...
- Python中的startswith和endswith函数使用实例
Python中的startswith和endswith函数使用实例 在Python中有两个函数分别是startswith()函数与endswith()函数,功能都十分相似,startswith()函数 ...
- Python中的"缝合器"zip函数:将多个可迭代对象组合成一个迭代器
zip函数将参数中多个可迭代对象中相同序号的元素取出组合成一个元组作为输出列表的一个同样序号的元素,即输出列表的每个元素是一个元组,该元组的元素来源于参数中每个迭代对象的对应序号的元素. 具体可参考: ...
- python中如何单独测试一个函数的作用
#!/usr/bin/python import os def get_env_varible(key): return os.getenv(key) if __name__ == '__main__ ...
- python中68个内置函数的总结
内置函数 内置函数就是python给你提供的, 拿来直接用的函数, 比如print., input等. 截止到python版本3.6.2 python一共提供了68个内置函数. #68个内置函数 # ...
- python中进程池和回调函数
一.数据共享 1.进程间的通信应该尽量避免共享数据的方式 2.进程间的数据是独立的,可以借助队列或管道实现通信,二者都是基于消息传递的. 虽然进程间数据独立,但可以用过Manager实现数据共享,事实 ...
- python 中的内置高级函数
1.map(function,iterable) map是把迭代对象依次进行函数运算,并返回. 例子: map返回的十分map对象,需要list()函数转化. 2.exec()函数 执行储存在字符串或 ...
- python中常见的内置函数
map #自定义map函数 def map_test(func, list): res = [] for item in list: res.append(func(item)) return res ...
随机推荐
- Kubernetes Dashboard的安装与坑【h】
1.前言 https://github.com/kubernetes/dashboard/releases kubectl apply -f https://raw.githubusercontent ...
- 【HANA系列】SAP HANA SQL去除字符串空格
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL去除字符 ...
- Cocos2d-x_初探_第一次配置与HelloWorld
此前多久,忘了,反正就是打通关泡泡龙以后.YY君向我推荐了这个(如题).一查资料,诶.还挺有意思的,那我就去下一个玩玩吧. 资料下载清单: 1.Android-ndk 2.Android-sdk 3. ...
- 【并行计算-CUDA开发】CUDA bank conflict in shared memory
http://hi.baidu.com/pengkuny/item/c8070b388d75d481b611db7a 以前以为 shared memory 是一个万能的 L1 cache,速度很快,只 ...
- 【FFMPEG】基于RTP的H264视频数据打包解包类
最近考虑使用RTP替换原有的高清视频传输协议,遂上网查找有关H264视频RTP打包.解包的文档和代码.功夫不负有心人,找到不少有价值的文档和代码.参考这些资料,写了H264 RTP打包类.解包类,实现 ...
- 性能排查--CPU占用高
排查思路: 1.先找到占用CPU高的进程PID top命令 2.top -H -p <PID> 查看哪个占用CPU高的线程TID 3.jstack <PID> /ho ...
- [转帖]InfluxDB 1.2.0安装及新旧版本的注意事项
InfluxDB 1.2.0安装及新旧版本的注意事项 http://haibing.org/245?zwlqby=npztq3 挺好的文章 很好的解决了 上一个文档里面 关于 web admin 的问 ...
- python私有化xx、_xx、__xx、__xx__、xx_的区别
xx:共有变量. _xx:私有化的属性或方法,from xxx import * 时无法导入,子类的对象和子类可以访问. __xx:避免与子类中的属性命名冲突,无法在外部直接访问(名字重整所以访问不到 ...
- less的引用及公共变量的抽离
一.什么是less? less是什么自然不用多言,乃一个css预编译器,可以扩展css语言,添加功能如如允许变量(variables),混合(mixins),函数(functions) 和许多其他的技 ...
- Jmeter之断言(响应断言,断言持续时间)
断言是测试环节中,十分重要的一节. 响应结果是否正确,可以通过断言判断,无需人工确认. 1.为请求添加断言 常使用:响应断言>Bean Shell断言>断言持续时间 2.响应断言 ●常用来 ...