zoukankan      html  css  js  c++  java
  • python通用序列操作

    python有6种内建序列,包括列表、元组、字符串、Unicode字符串、buffer对象、xrange对象。

    所有序列类型都可以进行某种特定的操作,这些操作包括:索引(indexing)、分片(sliceing)、加(adding)、乘(multipllying)以及检查某个元素是否属于序列的成员(成员资格)。除此之外,还有计算序列长度、找出最大元素和最小元素的内建函数。

    1、索引

        序列中所有元素都有自己的编号--从0开始递增。使用负数索引时,python从最后一个元素开始计数,最后一个元素的编号是-1(不是-0,因为那会和第一个元素重合)。如下示例:

    >>>name = 'foxsir'
    >>>name[0]
    'f'
    >>>name[2]
    'x'
    >>>name[-1]
    'r'
    >>>name[-4]
    'x'

     2、分片

    分片通过冒号相隔的两个索引来实现,用来访问一定范围内的元素,实现提取序列。分片的操作需要提供两个索引作为边界,第一个索引的元素是包含在分片内的,而第二个不包含在分片内。

    示例如下:

    >>>numbers = [1,2,3,4,5,6,7,8,9,10]
    >>>numbers[3:6]
    [4,5,6]
    >>>numbers[0:1]
    [1]
    >>>numbers[:3]
    [1,2,3]
    >>>numbers[:]
    [1,2,3,4,5,6,7,8,9,10]
    >>>numbers[-3:]
    [8,9,10]

    2.1、步长

    步长是分片的第三个参数,默认是1,当显式设置大于1的数字时,就会跳过某些元素,当为负值的时候,表示从右到左提取元素。示例如下:

    >>>numbers[0:10:1]
    [1,2,3,4,5,6,7,8,9,10]
    >>>numbers[::1]
    [1,2,3,4,5,6,7,8,9,10]
    >>>numbers[0:10:2]
    [1,3,5,7,9]
    >>>numbers[::2]
    [1,3,5,7,9]
    >>>numbers[3:6:3]
    [4]
    >>>numbers[::-1]
    [10,9,8,7,6,5,4,3,2,1]
    >>>numbers[10:0:-2]
    [10,8,6,4,2]
    >>>numbers[0:10:-2]
    []
    >>>numbers[::-2]
    [10,8,6,4,2]

    3、序列相加

    通过使用加好可以进行序列的连续操作,只有相同类型的序列才能进行连接操作。示例如下:

    >>>[1,2,3]+[4,5,6]
    [1,2,3,4,5,6]
    >>>'hello,'+''world'
    hello,world

    4、乘法

    用序列乘以数字num会生成一个新的序列,而且在新的序列中,原来的序列将被重复num次。示例如下:

    >>>'fox'*5
    'foxfoxfoxfoxfox'
    >>>[2]*5
    [2,2,2,2,2]

    5、成员资格

    in运算符是一个布尔运算符,用来检查一个值是否在序列中,在则返回True,不在则返回False。示例如下:

    >>>permissions = 'rw'
    >>>'w' in permissions
    True
    >>>'x' in permissions
    False
    >>>users = ['mlh','foo','bar']
    >>>raw_input('Enter your user name: ') in users
    Enter your user name: mlh
    True
    >>>subject = '$$$ Get rich now !!! $$$'
    >>>'$$$' in subject
    True

    6、长度、最小值、最大值

    内建函数len返回系列中包含的元素数量,min和max函数分别返回序列中最大和最小的元素。示例如下:

    >>>numbers = [100,34,678]
    >>>len(numbers)
    3
    >>>max(numbers)
    678
    >>>min(numbers)
    34
    >>>max(2,3)
    3
  • 相关阅读:
    perl练习——FASTA格式文件中序列GC含量计算&perl数组排序如何获得下标或者键
    短序列组装Sequence Assembly(转载)
    MEGA软件——系统发育树构建方法(图文讲解) 转载
    R语言中的read.table()
    网络七层模型OSI(Open System Interconnection)
    MySQL报错“The server time zone value '�й���׼ʱ��' is unrecognized”
    JDK环境变量配置
    netstat命令
    敏捷方法论(Agile Methodologies)
    0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded解决方法
  • 原文地址:https://www.cnblogs.com/foxsir/p/5432406.html
Copyright © 2011-2022 走看看