python中收集函数的解包问题

收集参数的解包问题

- 把参数放入list或者字典中,直接把list/dict中的值放入收集参数中
- 语法:参照案例

# 收集参数的问题

def stu(*args):
    print("="*20)
    # n表示循环次数
    # 主要用来调试
    n = 0
    for i in args:
        print(type(i))
        print(n)
        n+=1
        print(i)
        
l = [89,98,56,54,88,56]
stu(l)
# 此时,args的表示形式是字典内一个list类型的元素,即args=([89,98,56,54,88,56],)
# 很显然跟我们最初的想法违背

# 此时的调用,我们就需要解包符号,即调用的时候前面加一个星号
stu(*l)

 

====================
<class 'list'>
0
[89, 98, 56, 54, 88, 56]
====================
<class 'int'>
0
89
<class 'int'>
1
98
<class 'int'>
2
56
<class 'int'>
3
54
<class 'int'>
4
88
<class 'int'>
5
56
posted @ 2018-11-21 10:37  梓鹏  阅读(412)  评论(0编辑  收藏  举报