这几天看Python参数,对于位置参数,关键字参数和命名关键字参数有点蒙,就写了个这个,希望有所帮助吧。
首先介绍一下Python中的dict和truple(后面有用到):
dict的组成方式{'name':'AC','age':24},其中name和age被称为key,在Python交互式运行窗口运行name就会出现AC,可以通过name找到AC(类似字典的查询方式,知道页码,找到对应单词);
truple的组成(1,2,3,4),我觉得称之为固定不可变数组会更加容易理解,当truple只含有一个元素时(eg:(1))容易和单独的数字1相混淆,所以一般在其后面加一个逗号(变为(1,)),若用Python输出只含有一个元素的truple时,输出也会带后面的逗号,变为 1, 的形式。
1.区分位置参数和关键参数:
def person(name,**kw)
其中name为位置参数,只传入一个变量。
kw为关键参数,关键字传入的为dict变量。传入的是一个类似city='Beijing'这种形式的参数,此函数中此参数的个数可为任意个。eg:(我是第一个野指针)person('AC',city='JiLin')(一个关键参数),对应输出为AC (这是一个空格,诶) JiLin;(我是第二个野指针)person('AC',city='JiLin',gender='W')(两个关键参数),对应输出为AC(这也是一个空格,诶)JiLin(空格)W。
关键参数的第二种输入方式:extra = {'city':'JiLin'}这种方式,调用的方式为:person('AC',**extra),输出参考第一个野指针;extra
= {'city':'JiLin' , 'gender':'W'},调用的方式为:person('AC',**extra),输出参考第二个野指针。
2.命名关键字:
def person(name,age,*,job)命名关键字参数,其中第三个参数,只接收以job作为关键字参数。例如:person('AC',24,job='S')可以被接受,但是person('AC',24,city='JiLin')就不会被接受。
完啦!
本文介绍了Python中位置参数和关键参数的区别。位置参数如'name',而关键参数如'**kw',允许传入任意个以键值对形式的城市等信息。还提到了命名关键字参数,如'age'和'*job',限制了参数的接收方式。
1196

被折叠的 条评论
为什么被折叠?



