zoukankan      html  css  js  c++  java
  • pythoning ——2、数据类型(元组、序列)

    1、相同之处
    二者都是序列,具有序列类型的所有特性。包括索引、分片、加、乘以及成员资格等操作
    1)、索引
    序列所有元素都有编号,从0开始递增,如果一个函数调用返回一个序列那么可以直接对返回结果进行索引操作,字符串也是一个由字符组成的序列。如:

    >>> a = "test"
    >>> a[0]
    't'

    这就是索引,可以通过下标获取该位置的元素,从而有序的存取数据。
    2)、分片
    与索引来访问单个元素相似,分片可以访问一定范围内的元素。分片通过冒号隔开两个索引来实现:

    >>> b=[0,1,2,3,4,5,6,7]
    >>> b[3:5]
    [3, 4]
    >>> b[:]
    [0, 1, 2, 3, 4, 5, 6, 7]
    >>> b[3:]
    [3, 4, 5, 6, 7]
    >>> b[:3]
    [0, 1, 2]
    >>> b[1:-1]
    [1, 2, 3, 4, 5, 6]

    进行分片是,开始结束点需要进行制定,另外还有一种参数(步长),通常默认为一,可以控制:

    >>> a = [1,2,3,4,5,6,7]
    >>> a[::2]
    [1, 3, 5, 7]

    3)序列相加
    通过加运算可以使序列连接。

    >>> [1,2,3,4]+[5,6,7,8]
    [1, 2, 3, 4, 5, 6, 7, 8]

    注:需相同类型的序列方可
    4)乘法
    用数字N乘以一个序列会生成一个新的序列,为原序列被赋值N

    >>> [1]*5
    [1, 1, 1, 1, 1]

    5)成员资格
    可以使用in判断元素是否存在于序列当中返回值为bool类型

    >>> 1 in [2,3,4,5]
    False
    >>> 1 in [1,2,3]
    True

    2、序列方法
    1list函数
    实际是一种类型而非函数,但二者的区别并不重要,可以强制转换其他可以转换为列表的数据为列表(口述不清):

    >>> list("hello")
    ['h', 'e', 'l', 'l', 'o']
    >>> list((1,2,3,4))
    [1, 2, 3, 4]

    2)基本列表操作
    列表可以进行元素赋值,即改变列表中的元素的值:

    >>> x = [1,2,3]
    >>> x[1] = 4
    >>> x
    [1, 4, 3]

    列表可以删除元素,使用delpopremove均可实现,不同的是,delpop按下标,remove按照确定值:

    >>> x
    [1, 4, 3]
    >>> x.pop()
    3
    >>> x
    [1, 4]
    >>> del x[1]
    >>> x
    [1]
    >>> x.remove(1)
    >>> x
    []

    append

    append方法用于在列表末尾追加新的对象:

    >>> x = [1,2,3,4]
    >>> x.append(5)
    >>> x
    [1, 2, 3, 4, 5]

    count
    count函数统计某个元素在列表中出现的额次数:

    >>> x = [1,2,3,4,1,1,2,3,4]
    >>> x.count(1)
    3

    Extend

    extend用于在列表末尾一次性将另一个序列的值追加进去,以扩展原有列表:

    >>> x = [1,2,3]
    >>> y = [4,5,6]
    >>> x.extend(y)
    >>> x
    [1, 2, 3, 4, 5, 6]

    Index

    index用于从列表中找出某元素第一个匹配项的索引

    [1, 2, 3, 4, 5, 6, 1]
    >>> x.index(1)
    0

    insert

    insert方法用于将对象插入到列表中

    >>> x
    [1, 2, 3, 4]
    >>> x.insert(2,10)
    >>> x
    [1, 2, 10, 3, 4]

    sort
    sort用于对列表进行排序:

    >>> x = [3,2,1,4,5]
    >>> x.sort()
    >>> x
    [1, 2, 3, 4, 5]

    3元组:不可变序列
    除却序列中的增删改(好似没其他了)元组与列表操作结构相同。元组一经生成,不可变更。

  • 相关阅读:
    在Struts 2.0中实现表单数据校验(Validation)
    在Struts 2中实现IoC
    Atcoder Grand Contest 038 E Gachapon(MinMax 容斥+背包)
    快速沃尔什变换&快速莫比乌斯变换小记
    HDU1495 非常可乐 (嵌套结构体广搜 对比 一般广搜)
    【胡搞的不能AC的题解,暴力搜索一发博弈问题】1995 三子棋 51Nod
    【Low版】HAUT OJ Contest1035 2017届新生周赛(六)题解
    【动态规划】ZZNUOJ 2054 : 油田
    实验报告——直接插入排序、改进的冒泡排序和归并排序实现整数数组的排序
    【万能的搜索,用广搜来解决DP问题】ZZNU 2046 : 生化危机 / HDU 1260:Tickets
  • 原文地址:https://www.cnblogs.com/fukuda/p/5505324.html
Copyright © 2011-2022 走看看