您的位置:首页 > 编程语言 > Python开发

Python高薪之路——Python函数

2016-10-01 18:00 190 查看

Python中的函数的定义格式:

1、普通函数

def 函数名 (参数列表):

函数体

返回值(可有可无)

1)默认有限参数的函数,在以下的函数中,在调用时即使不传入age也不会报错,不传入就默认是10

def People(name,age=10):

...

2)可变长参数,传入的是值,以数组的形式遍历取出

例如

def printInfo(name,*args):
#打印任何传入的字符串
print '运行结果:name is',name
for arg in args:
print arg
return

printInfo('fjl',20,'女','付靖玲')
运行结果:name is fjl<pre code_snippet_id="1909868" snippet_file_name="blog_20161001_3_7347679" name="code" class="python">20
女
付靖玲





3)可变长参数,传入的是键值对(K-V)

def printInfo(name,**KVargs):
#打印任何传入的字符串
print '运行结果如下:name is',name
for k in KVargs:
print k,' is: ',KVargs[k]
return

printInfo('fjl',age = 20,sex = '女',Ch_Name = '付靖玲')
<pre name="code" class="python">运行结果如下:name is fjl
age  is:  20
Ch_Name  is:  付靖玲
sex  is:  女



<pre>



2 匿名函数

sum = lambda arg1,arg2:arg1+arg2        #匿名函数的定义
sum(90,92)		#匿名函数的调用
运行结果如下:182


匿名函数的应用

import numpy
from pandas import DataFrame
df = DataFrame({
'data1':numpy.random.randn(5),
'data2':numpy.random.randn(5)
})
#df调用匿名函数,实现求每一列的最小值
df.apply(lambda x:min(x))
#求每一行的最小值
df.apply(lambda x:min(x),axis=1)
#判断每一个列是否都大于0
df.apply(lambda x:numpy.all(x>0),axis=1)
#过滤掉小于0的元素
df[df.apply(lambda x:numpy.all(x>0),axis=1)]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息