1. 创建函数
(1) [函数名] (参数1,参数2):
程序体
例:def my abs(x):
If x>=0:
return x
else:
return –x
如果没有return 语句,函数执行完毕也会返回结果,结果为None
return None可以简写为return
python的函数返回多值就是返回一个tuple
(2) 空函数
用pass语句,也可以用在其他语句里
def nop():
pass
2. 参数
(1)类型
位置参数 position(参数个数,顺序与声明时一样)
默认参数key=value(必须指向不变对象)
非关键字参数 *arges
关键字变量参数 **kw
位置参数不能在关键词参数后面
例:deftra_area(base_up,base_down,height):
return 1.0/2*(base_up+base_down)*height
tra_area(1,2,3)
tra_area(height=3,base_down=2,base_up=1)
tra_area(1,2,height=3)
ta_area(height=3,base_down=2,1)(错误)
默认参数(缺省参数)设置非常简单,只需在定义参数的时候给参数赋值即可:
def tra_area(base_up,base_down,height=3):
return 1.0/2*(base_up+base_down)*height
只传两个参数即可
print tra_area(1,2)
可变参数就是传入的参数个数是可变的,例如:
deff(*args):
print args
调用该函数
>>> f(1, 2, 3, 4)
>>>(1, 2, 3, 4) for item in args:
item** 2
>>>sum = sum +
可见,python将所有位置相关的参数收集到了一个新的元组中,并将这个元组赋值给变量args
再有**这种可变关键字参数
>>> def f(**kw):
print kw
>>> f()
{}
>>> f(a=1, b=2)
{'a': 1, 'b': 2}
可见**kw是将关键字参数传递给一个字典
3.内置作用域
内置作用域是一个名为__builtin__的内置模块,
>>> import __builtin__
>>> dir(__builtin__)
返回一个列表,前一半是内置的异常,后一半是内置的函数
global语句 生成一个或多个全局变量