前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中函数的可变参数

python中函数的可变参数

作者头像
刘金玉编程
发布2019-07-30 15:07:54
2.2K0
发布2019-07-30 15:07:54
举报
文章被收录于专栏:编程创造城市

知识回顾:

1.函数关键字参数

2.函数的参数的默认值。必须从右边写到左边。


本节视频教程

文字教程开始:

一、【其实已经用过】可变参数

回顾系统自带的可变参数函数print

#系统自带的可变参数函数

print(1,2,"hello","刘金玉编程","编程创造城市",end="$$$")

如果我们想要开始自定义可变参数,只需要在函数参数的前面加上一个星号*

在函数体内部,默认情况下,带有*的参数传入的变量,我们输出的时候是元组类型。

如果要输出可变参数,由于数元组类型,我们往往针对元组类型的方式进行输出,参数可以用for循环来进行输出。

二、可变参数+普通参数 结合用法1

1.可变参数在开头的位置的情况

说明一下:如果可变参数在函数参数的开头的位置,普通参数在函数的第二个位置以后,那么在调用函数的时候,我们必须要采用关键字参数的用法,否则函数调用直接报错,报缺少调用参数的错误。

调用举例:

def add2(*a,b):

result=0

for v in a:

result+=v

result+=b

return result

print()

print(add2(1,2,3,4,5,b=10))

2.可变参数在中间的情况

注意:可变参数前面的参数变量,在调用函数的时候传参,传入的结果是可变参数前面的这些参数都分别作为前面参数的参数变量。可变参数后面的变量,必须使用关键字参数进行传入。

#定义可变参数在中间的情况

def add3(a,*b,c):

result=a

for v in b:

result+=v

result*=c

return result

#调用可变参数在中间的情况

print(add3(1,2,3,4,c=5))

可变参数在中间的情况的注意点:

注意:可变参数前面的参数变量,在调用函数的时候传参,传入的结果是可变参数前面的这些参数都分别作为前面参数的参数变量。可变参数后面的变量,必须使用关键字参数进行传入。

#定义可变参数在中间的情况

def add3(a,*b,c):

result=a

for v in b:

result+=v

result*=c

return result

#调用可变参数在中间的情况

print(add3(1,2,3,4,c=5))

三、总结强调

1.掌握可变参数的函数定义

2.掌握可变参数函数的几种不同情况的用法:可变参数在开头、可变参数在中间、可变参数在末尾。

本节源代码:

代码语言:javascript
复制
#系统自带的可变参数函数
print(1,2,"hello","刘金玉编程","编程创造城市")

def add1(*a):
    for v in a:
        print("【"+str(v)+"】",end=" ")
    pass

add1(1,2,3,34,564)

def add2(*a,b):
    result=0
    for v in a:
        result+=v
    result+=b
    return result

print()
print(add2(1,2,3,4,5,b=10))


#定义可变参数在中间的情况
def add3(a,*b,c):
    result=a
    for v in b:
        result+=v

    result*=c
    return result

#调用可变参数在中间的情况
print(add3(1,2,3,4,c=5))

执行结果:

代码语言:javascript
复制
1 2 hello 刘金玉编程 编程创造城市
【1】 【2】 【3】 【34】 【564】 
25
50

相关文章:

  1. python中函数关键字参数与默认值
  2. python中字典中的赋值技巧,update批量更新、比较setdefault方法与等于赋值
  3. python中函数概述,函数是什么,有什么用
  4. python中字典中的删除,pop方法与popitem方法
  5. python中进一步理解字典,items方法、keys方法、values方法
  6. python深度复制字典,copy方法与deepcopy方法
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程创造城市 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档