python序列

python中包括6种内建序列:列表、元祖、字符串、Unicode字符串、buffer对象、xrange对象

通用序列操作包括:索引、分片、加、乘、成员资格(in)、len、min、max

 

  • list

  • 操作
  1. 元素赋值
  2. del
  3. 切片
  4. list

  注:list是一个类型而非函数

  • 方法
  1. append
  2. count
  3. extend
  4. index
  5. insert
  6. pop
    a.pop(): 移除最后一个元素
    a.pop(index): index是序列下标

    注:pop是唯一 一个既能修改列表又能返回元素值(除了None)的列表方法
  7. remove
    remove(value):移除第一次出现的value
  8. reverse
    x=[1,2,3]
    >>>x.reverse()
    >>>x
    [3,2,1]
    
    reversed函数:返回一个迭代器对象
    x=[1,2,3]
    >>>list.reversed(x))
    [3,2,1]
  9. sort
    sort方法直接改变列表
    
    如何返回排序副本:
    1.
    >>>x=[4,6,2,1,7,9]
    >>>y=x[:]
    y.sort()
    
    注:不能直接把x赋给y,会使x,y指向同一个列表
    
    2.
    >>>x=[4,6,2,1,7,9]
    y=sorted(x)

    sorted 函数可以用于任何序列,总返回一个列表

    倒序排列可以这样做:
    >>>b=sorted(x)
    >>>x.reversed()
  10. 高级排序

  

  • tupple

  • 元祖和列表的区别
  1. 元祖是不可变序列
  2. 元祖可以在映射和集合的成员中当做键使用
  3. 元祖可以作为很多内建函数和方法的方绘制存在

  注:创建一个值的元祖需要加逗号

 

  • 字符串

  • 字符串是不可变序列
  • 字符串常用方法
  1. find 
    1 >>> s="i'm a student"
    2 s.find('tu',0,2)
    3 >>>-1
    4 s.find('tu',0)
    5 >>>7
    
    可接受起始点和结束点参数,类似方法还有:
    rfind,index,rindex,count,startwith,endwith         

     

  2. lower  
    1 >>>name = 'Gumby'
    2 >>>names=['gumby','jack','kaka']
    3 >>>if name.lower() in names: print 'found!'
    4 ...
    5 >>>found!


    相关方法:
    islower ,capitalize ,swapcase ,title, istitle ,upper ,isupper

     

  3. join 和 split
    1 >>>l=['a','b','c','d','e']
    2 >>>''.join(l)
    3 'abcde'
    4 >>>'+'.join(l)
    5 'a+b+c+d+e'
    6 注:被连接的序列元素必须是字符串
    
    8 >>>'a+b+c+d+e'.split()
    9 ['a','b','c','d','e']

    相关方法:
    rsplit,splitlines

     

  4. replace 和 translate
    1 >>>'i love you'.replace('you','her')
    2 'i love her'
    3 
    4 translate 只处理单个字符,可以进行多个替换:
    5 >>>from string import maketrans
    6 >>>table = maletrans('cs','kz')
    7 >>>'this is an incredible test'.translate(table)
    8 'thiz iz an inkredible tezt'

    maketrans 模块

     

  5. strip
    1.去掉两侧的空格;
     和lower一起使用可以方便的对比输入和存储的值:
     >>>name = 'Gumby  '
     >>>names=['gumby','jack','kaka']
     >>>if name.lower().strip() in names: print 'found!'
     ...
     >>>found!
    
    2.去掉指定字符:
    >>>'*** spam * for * everyone !!! ***' .strip('*!')
    ' spam * for * everyone'

    相关方法:
    lstrip,rstrip

     

     

  • 字符串模块
  • 字符串格式化                                                                           
posted @ 2016-01-16 17:49  utopia_8  阅读(152)  评论(0)    收藏  举报