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

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

一、函数的列表传参



列表举例 [“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.掌握字典的拆解传参,使用**,具体使用方法类似于列表


本节源代码

#对比可变参数与列表传参的区别
#可变参数的情况
# 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)

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

name=老刘
work=程序员
微信公众号=编程创造城市
相关文章
|
2天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
14 2
|
13天前
|
索引 Python
Python列表
Python列表。
42 8
|
15天前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
29 9
|
23天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
50 14
|
29天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
49 18
|
21天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
46 8
|
25天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
36 10
|
8月前
|
算法 Python 容器
Python编程 - 不调用相关choose库函数,“众数“挑选器、随机挑选器 的源码编程实现
Python编程 - 不调用相关choose库函数,“众数“挑选器、随机挑选器 的源码编程实现
99 0
|
4月前
|
算法 Python
Python编程的函数—内置函数
Python编程的函数—内置函数
23 0
|
8月前
|
算法 Python
Python编程实验四:函数的使用
Python编程实验四:函数的使用
114 0