python中小用法之assert,*arg,**arg用法全解

1.在python中用assert是用来声明某个条件是真的,若是不是真的就会出现AssertionError错误

list1 = [1,2,3,4]
assert len(list1)<=2
print list1

这里写图片描述

2.关于*arg,**arg的区别以及用法

*arg表示任意多个无名参数,类型为tuple,**kwargs表示关键字参数,为dict,使用时需将*arg放在**kwargs以前,不然会有“SyntaxError: non-keyword arg after keyword arg”的语法错误

当函数的参数不肯定时,可使用*args 和**kwargs,*args 没有key值,**kwargs有key值。

def function(farg, *args):  
    print "arg:", farg  
    for value in args:  
        print "another arg:", value  
function(1, "two222", 5)

这里写图片描述

def function(farg, **kwargs):  
    print "arg:", farg  
    for key in kwargs:  
        print "another arg: %s: %s" % (key, kwargs[key])   
function(farg=1, myarg2="two222", myarg3=5)

output:

arg: 1
another arg: myarg2: two222
another arg: myarg3: 5