自定义函数: def 名字(参数):python
函数体 app
返回值函数
再调用就行ui
pass函数就为空spa
pass
还能够用在其余语句里,好比:设计
if age >= 18: pass
缺乏了pass
,代码运行就会有语法错误。code
数据类型检查能够用内置函数isinstance
对象
设置p(a,x):返回多个参数 return x, yci
设计str、None这样的不变对象string
咱们能够用None
这个不变对象来实现:
def add_end(L=None): if L is None: L = [] L.append('END') return L
做为一个list或tuple传进来
因为参数个数不肯定,咱们首先想到能够把a,b,c……做为一个list或tuple传进来,这样,函数能够定义以下:
def calc(numbers): sum = 0 for n in numbers: sum = sum + n * n return sum
做为一个可变参数:只须要加一个*号
def calc(*numbers): sum = 0 for n in numbers: sum = sum + n * n return sum
有一个list或者tuple,要调用一个可变参数怎么办?能够这样作:
nums = [1, 2, 3] calc(nums[0], nums[1], nums[2])
因此Python容许你在list或tuple前面加一个*
号,把list或tuple的元素变成可变参数传进去:
nums = [1, 2, 3] calc(*nums)
def person(name, age, **kw): print 'name:', name, 'age:', age, 'other:', kw
关键字参数** 必需要有等于号才能赋值。>>> person('Bob', 35, city='Beijing') name: Bob age: 35 other: {'city': 'Beijing'} >>> person('Adam', 45, gender='M', job='Engineer') name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}
*args
是可变参数,args接收的是一个tuple;
**kw
是关键字参数,kw接收的是一个dict。