python *與**


python中,在形參前面加上“*”與“”“**”,稱為動態參數

加“*”時,函數可接受任意多個參數,全部放入一個元祖中

def F(*args):
    print(args)

F(123,"456")

# (123, '456')

加“**”時,函數接受參數時,返回為字典,需要寫為如下形式:

def F(**kwargs):
    print(kwargs)

F(k1=123,k2="456")

# {'k1': 123, 'k2': '456'}

 

def F(p,*args,**kwargs):
    print(p)
    print(args)
    print(kwargs)

F(11,"abc",[789],k1=123,k2="456")

# 11
# ('abc', [789])
# {'k1': 123, 'k2': '456'}

 

def F(*args):
    print(args)

li = [11,22,33,44]
F(li)
F(*li)

# ([11, 22, 33, 44],)
# (11, 22, 33, 44)

 

def F(**kwargs):
    print(kwargs)

li = {"k1":1,"k2":2}
F(k=li)
F(**li)

# {'k': {'k2': 2, 'k1': 1}}
# {'k2': 2, 'k1': 1}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM