python小知识

闭包的特点是返回的函数还引用了外层函数的局部变量

匿名函数有个限制,就是只能有一个表达式不写return,返回值就是该表达式的结果

@修饰函数:

def decoration(f):

    def fn(*args,**kw):

          print 'call'+f.__name__+'()'

          return f(*args,**kw)

    return fn

引用时利用@decoration即可调用,所有函数将会作为实参传入decoration,比如实际f1函数,在引用了decoration后,f1=decoration(f1)

*args表示一个tuple,**kw表示一个dict,创建字典的用法:

  def kw_dict(**kw):

        return kw

    print kw_dict(a=1,b=2,c=3) == {'a':1, 'b':2, 'c':3}

注意,*args和**kw同时使用时,要注意传参顺序,*args必须在**kw前面:

def f(**args,*kw):

    print args

    print kw

以上代码会提示error,invalid systax

实例属性与类属性:

当实例属性和类属性重名时,实例属性优先级高,它将屏蔽掉对类属性的访问。

=号的问题:

s,a,b=1,2,4

s=1,a=2,b=3

头部加上它避免乱码

# -*- coding: <encoding name> -*-
一般为utf-8

你可能感兴趣的:(python小知识)