Python学习三
定义函数:
自定义函数: def 名字(参数):
函数体
返回值
再调用就行
空函数:
pass函数就为空
pass
还可以用在其他语句里,比如:
python">if age >= 18: pass
缺少了pass
,代码运行就会有语法错误。
参数检查:
数据类型检查可以用内置函数isinstance
返回多个值:
设置p(a,x):返回多个参数 return x, y
默认参数:
设计str、None这样的不变对象
我们可以用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。
以上是 Python学习三 的全部内容, 来源链接: utcz.com/z/387481.html