args和*kwargs主要用于函数定义。#注意:标准参数和*args、**kwargs按顺序使用deftest_var(firstVar,*args,**kwargs):print(f"第一个位置参数:{firstVar}")#forarginargs:#print(f"Otherpositionalparameters{arg}")print(f"*args={args}")#forkey,valueinkwargs.items():#print(f"Otherkeywordparameters{key}={value}")print(f"**kwargs={kwargs}")首先,在魔术变量args和kwargs中,变量名args和kwargs只是两个流行的命名约定,并不固定,可以另外命名为vars,夸尔斯。然后,魔法不断发生。args表示变量args接受不确定数量的非命名参数,并返回一个元组-所有没有名称的未声明传入参数形成一个顺序元组。kwargs表示变量kwargs接受不定数量的关键字命名参数,并返回一个字典——所有以“keyName=value”形式传入的参数构成一个字典。代码中的标准参数是位置参数firstVar。函数定义,参数顺序:标准参数→args→*kwargs调用函数,参数传递顺序:位置参数→关键字参数最后,测试应用。if__name__=="__main__":test_var("888",5,6,"abc",average=55,score=63,stuName="WuLiLy")输出:第一个位置参数:888*args=(5,6,'abc')**kwargs={'average':55,'score':63,'stuName':'WuLiLy'}最后,如果你知道参数的传递方式和保存位置,那么有一个在功能上有很大的操作空间,功能的功能会更加丰富和包容。
