资讯专栏INFORMATION COLUMN

python疑问5:位置参数,默认参数,可变参数,关键字参数,命名关键字参数区别

Rainie / 1951人阅读

摘要:用于函数参数不确定的情况将或内全部元素作为可变参数关键字参数在前加两个,构造关键字参数。接收任意无限制的参数,用于扩展函数的功能先组装,再作为关键字参数传进去命名关键字参数命名关键字参数指定了,将关键字参数做了一个限制。

1.位置参数
位置参数要求调用时传入函数的参数必须和定义时的位置和个数一致,即一一对应,不可缺省

def func(a,b):
    sum = a + b
    return sum
print(func(2,3)) //5
print(func(2)) //报错

2.默认参数
定义在位置参数后,作用是当参数缺省时,用定义的默认值替代

def func(a,b=3):
    sum = a + b 
    return sum
print(func(2,4)) //6
print(func(2))  //5

3.可变参数
在tuple或list前加一个*,构造出可变参数。接收任意个参数,包括0个。用于函数参数不确定的情况

def func(*args):
    sum = 0
    for x in args:
        sum += x
    return sum 
    
print(func(1,2,3)) //6
//将list或tuple内全部元素作为可变参数
L = [1,2,3,4]
print(func(*L)) //10

4.关键字参数
在dict前加两个*,构造关键字参数。接收任意无限制的参数,用于扩展函数的功能

def func(a,b,**kw):
    sum = a+b
    print(a,"+",b,"=",sum,kw)
func(2,3,color="black",phone="vivo")
// Out:2 + 3 = 5 {"color": "black", "phone": "vivo"}

//先组装dict,再作为关键字参数传进去
desc = {"color": "black", "phone": "vivo"}
func(2,3,**desc)
// Out:2 + 3 = 5 {"color": "black", "phone": "vivo"}

5.命名关键字参数
命名关键字参数指定了key,将关键字参数做了一个限制。以一个作为分割。如果已经存在可变参数,那么命名关键字不需要作为分割

def func(a,b,*,color):
    sum = a+b
    print(a,"+",b,"=",sum,"color:",color)
func(2,3,color="black") // Out:2 + 3 = 5 color: black
func(2,3,color="black",phone="vivo") //报错 func() got an unexpected keyword argument "phone"
//如果已经存在可变参数,那么命名关键字不需要*作为分割
def func(a,b,*args,color="red"):
    sum = a+b
    print(a,"+",b,"=",sum,args,"color:",color)
func(2,3,color="black") //2 + 3 = 5 () color: black
func(2,3,4,5,color="black") // 2 + 3 = 5 (4, 5) color: black
//命名关键字支持默认值
func(2,3,4,5) //2 + 3 = 5 (4, 5) color: red

注意:
参数位置排列顺序:位置参数,默认参数,可变参数,命名关键字参数,关键字参数,

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/41348.html

相关文章

  • Python每日小知识(6)函数滴参数

    摘要:默认参数这家伙还是有点点瑕疵的,默认参数必须一定以及肯定得指向不可变对象。写完这顽固不化的默认参数,就轮到灵活多变的可变参数上场了。 函数的参数 总结一下这几种参数先:本来位置是默认滴,后来不知咋地可变了,位置上还用关键字这么上档次的名字命名关键字了。先讲讲废话:我们做接口自动化或者其它测试,总之需要使用一些参数的时候,我们作为函数的调用者,无需了解太多,你只需要肤浅的知道如何如何滴传...

    andot 评论0 收藏0
  • Python - 函数的参数

    摘要:调用函数时,必须传入且传入的两个值按照位置顺序依次赋给参数和,若缺省,则会报错。例如二默认参数在函数定义中,为参数预先定义默认值。执行相当于调用如果要求的四次方,则需要执行设置默认参数的好处默认参数可以简化函数的调用,降低调用函数的难度。 题外话:因为时间关系,没能保持一定的更新频率。但还是会一直坚持的~ 之前介绍了Python函数的定义,今天分享一下Python函数的参数吧!内容会...

    APICloud 评论0 收藏0
  • 【数据科学系统学习】Python # 编程基础[一]

    摘要:在定义函数时给定的名称称作形参,在调用函数时你所提供给函数的值称作实参。调用函数要调用一个函数,需要知道函数的名称和参数。默认参数值可以有效帮助解决这一情况。是默认参数定义默认参数要牢记一点默认参数必须指向不变对象。 关于数据科学在做什么,我们已经在前两篇文章中进行了总结,即专题概述和描述性统计分析。要进行数据科学的探索,需要一个好工具,就是Python。从本篇开始,将总结学习Pyth...

    luckyyulin 评论0 收藏0
  • 小李飞刀:python你慢点飞,我的脑子还在后面追

    摘要:默认参数设置默认参数时,有几点要注意一是必选参数在前,默认参数在后,否则的解释器会报错二是如何设置默认参数。注意此处,获得的其实是的拷贝,函数内对的改变不会影响到。使用递归函数需要注意防止栈溢出。 总是在最前面的叨逼叨 最近总是在想成长这两个很常常被提起的事情,这对于一个已经25岁的半中年而言,已经是一个不太能高频提起的词。但是,最近一些事情吧,总让我觉得我的生长期似乎比正常人来的晚了...

    kevin 评论0 收藏0
  • Python学习之路7-函数

    摘要:函数名应尽量只有小写字母和下划线。传递参数位置参数必选参数这就是要求实参的顺序和形参的顺序相同。比如上述函数如果给形参指定默认值,则可以看出这个函数主要是用来描述狗这种宠物的。在的函数中,使用语句来返回值。 《Python编程:从入门到实践》笔记。本章主要介绍Python中函数的操作,包括函数的概念,定义,如何传参等,最后还有小部分模块的概念。 1. 定义函数 1.1 一般函数 函数是...

    pekonchan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<