python的函数_byseyOrd
2021-02-19 09:18
标签:一个 code instance 参数 函数参数 turn ret 自带 使用 1)普通传值 2)函数参数设置默认值 3)使用元组和列表传值——可变参数 用于传入的参数个数不定的情况,所以当与普通参数一同使用时,把带星号的参数放在最后,使用*号可以将list或tuple的所有元素作为可变参数传进函数里,不管使用的是list还是tuple,变成可变参数时都会转成tuple 4)关键字参数 关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict 5)参数的类型和顺序 必选参数,默认参数,可变参数,关键字参数和命名关键字参数(星号越多越靠后) 自定义的函数没有参数检查功能,python自带的函数有这样的功能,在参数个数不对是会报TypeError,我们也可以通过raise一个TypeError实现参数检查功能 python是return多个值的情况是把多个值组成了一个元组再返回 python的函数_byseyOrd 标签:一个 code instance 参数 函数参数 turn ret 自带 使用 原文地址:https://www.cnblogs.com/seyOrd/p/12685368.html函数定义格式
def sum():
"""
函数说明
"""
pass函数传值
def sum(a, b):
"""
函数说明
"""
pass
sum(1,2)
sun(a=1,b=2)
def sum(a = 1, b):
"""
函数说明
"""
pass
sum(b=2)
def f1(*d):
print(d, type(d))
def f2(**d):
print(d, type(d))
# 上面定义了两个函数,分别用了带一个星号和两个星号的参数:
f1(1, 2, 3)
f2(a = 1, b = 2, c = 3)
# 结果如下
(1, 2, 3) class ‘tuple‘>
{‘a‘: 1, ‘c‘: 3, ‘b‘: 2} class ‘dict‘>
#其中一个星号的参数是可变参数
f1(1, 2, 3)
#或
nums = [1, 2, 3]
fi(*nums)
#或
nums = (1, 2, 3)
fi(*nums)
def person(name, age, **kw):
print(‘name:‘, name, ‘age:‘, age, ‘other:‘, kw)
person(‘Adam‘, 45, gender=‘M‘, job=‘Engineer‘)
name: Adam age: 45 other: {‘gender‘: ‘M‘, ‘job‘: ‘Engineer‘}
def f1(a, b, c=0, *args, **kw):
pass
f1(a = 1, b = 2, c = 3, args = (‘a‘, ‘b‘), kw = {‘x‘: 99})
f1(1 ,2 , kw = {‘x‘: 99})
自定义函数参数检查
def my_abs(x):
if not isinstance(x, (int, float)):
raise TypeError(‘bad operand type‘)
if x >= 0:
return x
else:
return -x
return 多个值
下一篇:每日算法-06