一、定义一个函数
定义一个函数必须遵循如下的简单规则
- 函数代码块以def 关键词开头,后接函数标示符名称和圆括号()
- 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数
- 函数的第一行语句可以选择性的使用文档字符串——用于存放函数说明
- 函数内容以冒号开始并且缩进
- return[expression]结束函数,选择性的返回一个值给掉用方,如果没有return那么就返回空
def functionname( parameters ):
"函数_文档字符串"
function_suite
return [expression]默认情况下,传递的参数值是与参数定义顺序保持一致的,其实c、java、sql等都是类似的
二、函数调用
三、参数传递类型
四、参数的类型
- 必备参数
- 命名参数
- 缺省参数
- 不定长参数
#!/usr/bin/python
#可写函数说明
def printinfo( name, age = 35 ):
"打印任何传入的字符串"
print "Name: ", name;
print "Age ", age;
return;
#调用printinfo函数
printinfo( age=50, name="miki" );
printinfo( name="miki" );
#以上实例输出结果:
#Name: miki
#Age 50
#Name: miki
#Age 35 (四)、不定长参数
def functionname([formal_args,] *var_args_tuple ):
"函数_文档字符串"
function_suite
return [expression]加入了型号*的变量名会存放所有未命名的变量参数,当然也可以选择不多传参数,例如:
#!/usr/bin/python
# 可写函数说明
def printinfo( arg1, *vartuple ):
"打印任何传入的参数"
print "输出: "
print arg1
for var in vartuple:
print var
return;
# 调用printinfo 函数
printinfo( 10 );
printinfo( 70, 60, 50 );
五、匿名函数
lambda [arg1 [,arg2,.....argn]]:expression
g = lambda x : x**2
冒号前面是参数,可以多个参数,用逗号分隔,冒号右边是返回值2. 对于一些抽象的,不会别的地方再复用的函数,有时候给函数起个名字也是个难题,使用lambda不需要考虑命名的问题。
3. 使用lambda在某些时候让代码更容易理解。
1130



被折叠的 条评论
为什么被折叠?



