python之函数
来源:互联网 发布:公司使用的php开发软件 编辑:程序博客网 时间:2024/06/10 14:19
函数的定义
def 函数名(参数):
# 函数在执行过程中一旦遇到return时,函数就执行完毕,并将结果返回。# 函数在执行过程中没有遇到return时,返回值为None.def hello(): return 'hello' print 'fentiao'print hello()
调用函数
Python 内置了很多有用的函数,我们可以直接调用:
• abs()
• cmp()
• 数据类型转换函数:
int(), float(), str(),unicode(),bool()
函数返回值
# 函数返回多个值,实质上是返回一个元组touple,返回时元组可以省略括号,# 函数调用接受返回值时,按照位置赋值给变量def func(a, b): if not isinstance(a, int) or not isinstance(b, int): print 'error type' avg = sum((a, b)) / 2 maxnum = max(a, b) return (avg, maxnum)myavg, mymax = func(2, 9)print myavg, mymax
函数的参数
1.默认参数
# 默认参数必须是不可变数据类型def func1(a=None): if a is None: return ['END'] a.append('END') return adef func(li=[]): if len(li) == 0: return ['END'] li.append('END') return liprint func([1, 2, 3])print func()
2.可变参数
# 可变参数# 定义函数时,形参可以为*args,使函数可以接收多个参数;# 如果想将一个列表或者元组传入函数,也可以通过*li 或 *t,将参数传入函数里。def fun(*args): print type(args) return max(args), min(args)li = 87, 23, 34, 77, 2, 66print fun(*li)
3.关键字参数
# 关键字参数def enroll(name, age=22, **kwagrgs): print 'name:', name, '\nage:%d' % age for key, value in kwagrgs.items(): print '%s:%s' % (key, value) print type(kwagrgs)enroll('cici', myclass='linux', gender='male', feel='ll', )
3.总结
参数定义的顺序:必选参数 > 默认参数 > 可变参数 > 关键字参数
*args,可变参数,args接收的是touple
**kwargs,关键字参数,kwargs接收的是dic
# 默认参数,必选参数同时存在函数中存在时,一定将必选参数放在默认参数前面;# 设置默认参数时,把变化大的参数放在前面,变化小的参数放在后面,变化小的参数可以设置为默认参数。def enroll(name, age=22, myclass='linux'): print 'name:', name, '\t age:%d' % age, '\t class:', myclassenroll('hehe')enroll('xiaoxiao', 18)enroll('cici', 24, 'all')
4.变量的作用域
b = 2 # 全局变量,在整个代码中生效def a(): global b # 将局部变量转换为全局变量 b = 1 # 局部变量,只在函数中生效 print ba()print b
示例:
求绝对值的函数
def myabs(a): if isinstance(a, (int, float)): # print abs(a) return abs(a) else: print 'bad type for myabs()'# a = input()print myabs('ad')
阅读全文
0 0
- python函数之filter函数
- Python之工厂函数
- python之daemon函数
- python笔记之函数
- Python学习之函数
- python学习之函数
- Python学习之函数
- python之enumerate函数
- Python之函数
- Python 函数之seek
- python之函数
- Python学习之函数
- python函数之strip()
- Python之Split函数
- python之len函数
- 自学Python之函数
- python学习之函数
- python系列之 - 函数
- python | PyCharm不能RUN,只能RUN in unittest
- JavaScript之闭包的实现、闭包中的this对象
- CentOs7安装mysql
- Hadoop2源码分析-MapReduce篇
- BZOJ2724: [Violet 6]蒲公英(分块)
- python之函数
- 数据挖掘(机器学习)面试--SVM面试常考问题
- 算法第八章练习题20
- IDL之指针
- Java_基础—集合嵌套之ArrayList嵌套ArrayList
- android 数据持久化技术
- shell中的特殊变量及用法
- 面向对象-继承
- prim算法——小根堆实现