美文网首页
[python]中的* 和**

[python]中的* 和**

作者: VanJordan | 来源:发表于2019-04-28 17:02 被阅读0次
    • *a可以理解为将一个串用逗号隔开的变量变换成列表,并用a作为列表的名字
    def adder(*num):
        sum = 0
        
        for n in num:
            sum = sum + n
    
        print("Sum:",sum)
    
    adder(3,5)
    adder(4,5,6,7)
    adder(1,2,3,5,6)
    
    • **a可以理解为将一个串用逗号隔开的赋值操作变换成字典,其中赋值操作的左边是key,右边是value,并用a作为这个字典的名字.
    def intro(**data):
        print("\nData type of argument:",type(data))
    
        for key, value in data.items():
            print("{} is {}".format(key,value))
    
    intro(Firstname="Sita", Lastname="Sharma", Age=22, Phone=1234567890)
    intro(Firstname="John", Lastname="Wood", Email="johnwood@nomail.com", Country="Wakanda", Age=25, Phone=9876543210)
    
    • *星号操作是解包
    a = [1,2,3,4]
    print(*a)
    >>> 1 2 3 4
    
    • zip中的*apply操作拿走list,然后将list中的元素当做输入的参数
    a = [1,2,3,4]
    b = [5,6,7,8]
    
    print(*zip(a,b))
    >>> (1, 5) (2, 6) (3, 7) (4, 8)
    
    • 普通的解包
    a = [1,2,3,4]
    b = [5,6,7,8]
    
    d,f,g,h = zip(a,b)
    print(d)
    >>> (1, 5)
    

    相关文章

      网友评论

          本文标题:[python]中的* 和**

          本文链接:https://www.haomeiwen.com/subject/lmfjnqtx.html