学习笔记(5):Python初级入门精讲-关键字参数

立即学习:https://edu.csdn.net/course/play/6521/126666?utm_source=blogtoedu

python的函数、参数

例如:函数名称为 testFun

           参数名称分别有a、b、c

函数:

定义——def 函数名称(参数),参数根据应用场景可有可无

def testFun01():
    print("This is my first function!")


def testFun(a):
    print(a)


testFun01()
testFun("Welcome to learn Python ^_^")

返回——return

return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

def testFun01(a, b):
    sumNum = a + b
    print("a+b=",sumNum)
    return sumNum


testFun01(33, 7)

在这里练习的时候我发现,这个return加和不加,效果都是一样的。所以,return你到底是来干嘛的?_?。嗯,小小的纠结了下,查了半天,还是不大懂。要你何用?T_T?

然而它存在就肯定有他的道理,咱不钻牛角尖不钻牛角尖(疯狂暗示自己),后面用多了自然就理解了。若有人可以热心为我解释下,甚是感激(★ ω ★)


参数:占位

在 python 中,类型属于对象,变量是没有类型的

调用参数时使用的参数类型:

  1. 关键字参数:定义时所有参数赋一个默认值,忽略参数顺序。
  2. 默认参数:定义时给参数一个默认值,在调用时不指定参数,会使用默认参数。
  3. 序列参数:所有参数作为一个列表传入。传参时需要在前面加*,例如:函数名(*列表参数)
  4. 字典参数:参数作为一个字典传入。例如:a={"1":"one","2":"two","3":"three"},调用时加两个*,

上面的定义是我在上面的视频中总结到的,咳,没有写例子,看着有点绕。为了加深记忆,我另外又找了菜鸟教程上的相关资料,上面的内容更加详细一些。不过两个内容表达有些出入,我是研究了菜鸟教程里面的内容后完全明了的。

菜鸟教程上调用函数时可使用的正式参数类型:必需参数、关键字参数、默认参数、不定长参数(即上面的序列参数、字典函数)。

最后我做了个整理,翻译成我自己容易懂的形式:

必需参数必需参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。定义时有参数,调用时不传参会出现语法错误
关键字参数使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。例如:若开始在定义时用testFun(a),则调用时需要用testFun(a = "要传的参数"),若用testFun()则会报语法错误
默认参数调用函数时,如果没有传递参数,则会使用默认参数。例如:在定义的时候用testFun(a, b=21),此时在调用时若用testFun(0),会默认将所传参数当成a,b用默认值。
序列参数处理比当初声明时更多的参数,参数带一个星号 * ,以元组的形式导入,存放所有未命名的变量参数。例如:定义的函数为 testFun(a, *b),现在的b就是一个空元组,调用函数时 若用 testFun(10, 20, 30),除了第一个参数,后面的都会以元素组方式传给b,此时 b = (20, 30)
字典参数同序列参数使用相似。参数带两个星号 **,以字典形式导入,但后面参数必须用关键字传入。例如:定义的函数为 testFun(a, **b),现在的b就是一个空字典,调用testFun(11, first = 12, second = 13 ),,除了第一个参数,后面的都会以字典方式传给b,此时 b = {'first':12, 'second':13}

声明函数时,参数中星号 * 可以单独出现,例如:testFun(a, b , *, c),这里的*并无实际作用只是占了位置,但传参的时候,c只能用关键字传入

最后,菜鸟教程中还提到一个匿名函数 lambda ,对于刚刚入门的我来说就不继续深入了解了,后续有需要的时候再看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值