序列

作者: Rim99 | 来源:发表于2015-12-08 21:23 被阅读25次

    原文第2章第3节

    分解序列(sequence unpacking)

    The pattern of binding multiple names to multiple values in a fixed-length sequence。
    序列中各值赋予不同变量名。

    >>> pairs = [[1, 2], [2, 2], [2, 3], [4, 4]]
    
    >>> same_count = 0
    

    如果执行下列代码:

    >>> for x, y in pairs:
            if x == y:
                same_count = same_count + 1
    

    就可以得到:

    >>> same_count
    2
    

    更多可见Python 3技巧:分解序列 - 极客范

    列表推导式(list comprehension)

    An expression that can performs such a sequence processing operation which can be expressed by evaluating a fixed expression for each element in a sequence and collecting the resulting values in a result sequence.
    一行代码直接完成对列表的便利操作并返回值。
    例如,

    >>> odds = [1, 3, 5, 7, 9]
    >>> [x+1 for x in odds]
    [2, 4, 6, 8, 10]
    
    # Another Example
    >>> [x for x in odds if 25 % x == 0]
    [1, 5]
    

    通式:

    [<map expression> for <name> in <sequence expression> if <filter expression>]
    

    更多见这里

    列表推导式的效果也可以用高阶函数的方式来达到,但前者更为常见(个人觉得前者更利于理解)。

    数据类型的闭合性

    In general, a method for combining data values has a closure property if the result of combination can itself be combined using the same method.
    例如,列表自身可以组成列表的元素。

    其它

    相关文章

      网友评论

          本文标题:序列

          本文链接:https://www.haomeiwen.com/subject/hybehttx.html