美文网首页
Python起步——序列

Python起步——序列

作者: leo_shun | 来源:发表于2018-10-02 01:55 被阅读0次

    序列

    在python种,最基本的数据结构就是序列。Python中包含6种内建的序列,分别是:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。

    通用序列操作

    所有的序列类型都可以进行某些特定的操作,包括:索引(index),分片(slicing),加(adding),乘(multiplying)以及检查某个元素是否属于序列的成员,计算序列长度,找出最大元素和最小元素的内建函数。

    1. 索引

    正数索引从0开始,从左向右依次增加。
    负数索引从-1开始,从右向左依次减小。

    >>> a = [3, 4, 2, 5, 5]
    >>> print(a[0])
    3
    >>> print(a[-1])
    5
    >>> 'Hello'[1]
    'e'
    
    2. 分片

    用于访问一定范围内的元素,返回一个新的序列。

    >>> numbers = [1,2,3,4,5,6,7,8,9,10]
    >>> numbers[::-1]
    [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
    >>> numbers[8:3:-1]
    [9, 8, 7, 6, 5]
    
    3. 序列相加

    通过使用加运算可以进行序列的链接操作。只有两种类型相同的序列才能进行加操作。

    >>> [1,2,3] + [4,5,6]
    [1, 2, 3, 4, 5, 6]
    >>> [1,2,3] + 'string'
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: can only concatenate list (not "str") to list
    
    4. 乘法运算

    用数字x乘以一个序列会生成新的序列,是原来序列的x次重复。

    >>> 'python'*3
    'pythonpythonpython'
    >>> 3 * [1,2,3]
    [1, 2, 3, 1, 2, 3, 1, 2, 3]
    >>> sequence = [None] * 10
    >>> sequence
    [None, None, None, None, None, None, None, None, None, None]
    
    5. 成员资格

    使用in运算符检查一个值是否在序列中。

    >>> permissions = 'rw'
    >>> 'w' in permissions
    True
    >>> 'x' in permissions
    False
    
    database = [['albert', '1234'], ['dilbert', '4232'], ['smith', '7524'], ['jones', '9843']]
    username = raw_input('User name:')
    pin = raw_input('PIN code:')
    print([username,pin])
    if [username, pin] in database:
        print "access granted"
    else:
        print "access denied"
    
    6. 长度、最小值和最大值

    内建函数len、min和max的使用。

    >>> len(numbers)
    6
    >>> max(numbers)
    6
    >>> min(numbers)
    2
    >>> max(2,4,43,12)
    43
    >>> min(2,4)
    2
    

    相关文章

      网友评论

          本文标题:Python起步——序列

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