前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中函数的序列传参,列表拆解传参、字典拆解传参

python中函数的序列传参,列表拆解传参、字典拆解传参

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

知识回顾:

可变参数

  • 应用场景:在不确定函数参数到底有多少个的时候,使用可变参数。使用符号星号*
  • 混合运用场景:根据可变参数在自定义函数中的不同的位置来做不同情况的调用。很有可能要结合关键字参数。

本节教程视频

一、函数的列表传参

列表举例 [“a”,”b”,”c”]

其实在使用列表传参的时候比较简单,只需要将实际的列表作为参数传入到调用的函数中的时候,在列表变量前加上一个星号*即可把某个列表拆分成多个参数传入到自定义函数中。如果调用的时候不加*那么多把列表看成一个整体传入。

举例:

list2=["a","b","c"]

def P2(*s1):

for v in s1:

print("<"+str(v)+">")

pass

P2(*list2)

列表拆解传参的注意事项

注意:如果在自定义函数的时候,定义的参数前没有加*,那么我们在调用这个函数的时候,也不能在列表参数值前加*。其实在这里,我们如果想要将列表拆解成多个参数进行传入的时候,我们必须就是要定义一个可变参数,而定义可变参数的时候,我们必须要加上一个*

本质:列表拆解传入的时候 ,自定义函数的参数个数必须要支持实际拆解传参调用函数。

二、函数的字典传参

类似于列表拆解传参,只不过在传入的参数前面加上两个*,也即使说使用双星号**

举例:

dic1={"name":"老刘","work":"程序员","微信公众号":"编程创造城市"}

def D1(**d):

print(d)

D1(**dic1)

注意:在定义函数的时候使用**进行定义的话,我们必须在调用的时候也要对传入的字典加上**

同样类似于列表的去星号方式

在定义字典作为参数的时候,如果定义的参数没有**,那么在调用这个函数的时候,也不要加上**,否则直接报错。

三、知识总结:

函数的序列传参

1.列表的拆解传参,可以使用*,也可以省略,具体要看传入的参数的数量作为本质条件。

2.掌握字典的拆解传参,使用**,具体使用方法类似于列表

本节源代码

代码语言:javascript
复制
#对比可变参数与列表传参的区别
#可变参数的情况
# def P(*s1):
#     for v in s1:
#         print("<"+str(v)+">")
#     pass
#
# list1=["a","b","c"]
#
# P(list1,"123","ggg")

#拆解列表传参的情况
# list2=["a","b","c"]
# def P2(*s1):
#     for v in s1:
#         print("<"+str(v)+">")
#     pass
#
# P2(*list2)
#
# #定义的时候不加星号的情况
# list3=["a","b","c"]
# def P3(s1):
#     for v in s1:
#         print("【"+str(v)+"】")
#
# P3(list3)

#定义参数数量和列表中的值的数量相同的情况
# list4=["a","b","c"]
# def P4(s1,s2,s3):
#     print("#"+s1+"#")
#     print("#" + s2 + "#")
#     print("#" + s3 + "#")
#
# P4(*list4)
#自定义字典的传入输出
# dic1={"name":"老刘","work":"程序员","微信公众号":"编程创造城市"}
# def D1(**d):
#     for s1 in d.items():
#         print(s1[0]+"="+s1[1])
#
# D1(**dic1)
dic2={"name":"老刘","work":"程序员","微信公众号":"编程创造城市"}
def D2(d):
    for s1 in d.items():
        print(s1[0]+"="+s1[1])

D2(dic2)

执行效果(注释的代码将没有显示效果):

代码语言:javascript
复制
name=老刘
work=程序员
微信公众号=编程创造城市

相关文章:

  1. python中函数的可变参数
  2. python中函数关键字参数与默认值
  3. python中lambda表达式与函数,函数传参、引用、作用范围、函数文档
  4. python中函数概述,函数是什么,有什么用
  5. python中字典中的赋值技巧,update批量更新、比较setdefault方法与等于赋值
  6. python中字典中的删除,pop方法与popitem方法
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-29,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

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