zoukankan      html  css  js  c++  java
  • 几个Python小程序

    1:

    def buildConnectionString(param):
        """
        """
        return ";".join("%s=%s" %(k,v) for k,v in param.items())

    if __name__=="__main__":
        myParams={"server":"mpilgrim", \
                    "database":"master", \
                    "uid":"sa", \
                    "pwd":"secret" \
                    }
        print buildConnectionString(myParams)

    --------------------------

    没什么好说的

    2:

    def info(object,spacing=10,collapse=1):
        """
        list the api of the object
        """
        methodList=[method for method in dir(object) if callable(getattr(object,method))]
        processFunc=collapse and (lambda s:" ".join(s.split())) or (lambda s:s)
        print "\n".join("%s %s" %(method.ljust(spacing),processFunc(str(getattr(object,method).__doc__))) for method in methodList )
       
    if __name__=="__main__":
        print info.__doc__
        li=[]
        info(li)

    -----------------------------------------------------

    methodList=[method for method in dir(object) if callable(getattr(object,method))]

    注意句法, XX for in XXX if ***

    processFunc=collapse and (lambda s:" ".join(s.split())) or (lambda s:s)

    lambda表达式 and or

    and例子

    >>> 'a' and 'b'         1
    'b'
    >>> '' and 'b' 2
    ''
    >>> 'a' and 'b' and 'c' 3
    'c'

    如果有假值,则返回第一个假值,否则返回最后一个真值

    or例子:

    >>> 'a' or 'b'          1
    'a'
    >>> '' or 'b' 2
    'b'
    >>> '' or [] or {}      3
    {}

    如果有真值,返回第一个真值,否则返回最后一个假值

    lambda例子:

    >>> def f(x):
    ...     return x*2
    ...    
    >>> f(3)
    6
    >>> g = lambda x: x*2 1
    >>> g(3)
    6
    >>> (lambda x: x*2)(3) 2
    6


  • 相关阅读:
    致橡树——舒婷
    MPU6050
    Android自动折行TextView Group
    基于LRU Cache的简单缓存
    如果不能给心以翅膀,她如何飞翔
    ubuntu手机识别
    Webkit JNI
    scrapy入门
    Webkit二:RenderTree 创建
    Webkit一:Dom转码和解析
  • 原文地址:https://www.cnblogs.com/macula7/p/1960422.html
Copyright © 2011-2022 走看看