zoukankan      html  css  js  c++  java
  • Python数据结构

    1. 元组(tuple)

    元组由不同的元素组成,每个元素可以储存不同类型的数据,如字符串、数字甚至元组。元组是写保护的,即元组创建后不能再做任何修改操作。

    1.1 元组的创建

    Tuple(元组)由一系列元素组成,所有元素被包含在一对圆括号中。创建元组时可以不指定元素个数,但一旦创建后就不能修改长度

    元组的创建格式如下:
    tuple_name = (元素1,元素2,…)

    如果创建空元组,只需要一对空的圆括号:
    tuple_name = ()

    如果创建的元组只包含一个元素,应在元素后面加上逗号,以区分元素不是表达式,而是元组:
    tuple_name = (元素,)

    元组的索引时从0开始计数的,因此,tuple_name[0]获得的是元组的第一个元素。

    1.2 元组的访问

    元组中元素的值通过索引访问,索引是一对方括号中的数字,也称之为下标。元组的访问格式如下:
    tuple_name[n]
    其中,n表示访问元组的第n个元素,索引n的值可以是0、正整数、负整数。负数索引从元组的尾部开始计数,最末端的元素索引表示为-1,依次类推。

    注意:元组中的元素不支持添加、删除和赋值操作。

    分片(slice)是元组的一个子集,分片是从第一个索引到第二个索引(不包括第二个索引指向的元素)所指定的所有元素。分片格式如下:
    tuple_name[m:n]
    其中,m、m可以是0、正整数、负整数。

    元组还可以由其它元组组成。例如,二元元组可以表示为:
    tuple_name=((元素1,元素2),(……),……)

    2. 列表

    元组由一组元素组成,列表可以实现添加、删除、修改和查找操作。

    2.1 列表的创建

    List(列表)由一系列元素组成,所有元素被包含在一对方括号中。列表创建后,可以执行添加、删除和修改操作。列表的创建格式如下:
    list_name = [元素1,元素2,…]

    列表的添加可以使用append(),该方法声明如下提示:
    append(object)
    其中,object可以是元组、列表、字典或任何对象。每次添加的元素将排在列表尾部。

    列表的删除可以使用remove(),该方法声明如下提示:
    remove(value)
    该方法将删除value。如果value不存在 ,python将抛出ValueError异常。

    列表的插入可以使用insert(),该方法声明如下提示:
    insert(i,value)
    在指定索引位置i处插入一项value。


    2.2 列表的方法
     •list_name[m:n] ---- 分片
     •append(object) ---- 在列表的末尾添加一个对象object
     •insert(index,value) ---- 在指定索引index处插入一个对象object
     •remove(value) ---- 删除列表中首次出现的value值
     •pop([index]) ---- 删除索引index指定的值;如果index不指定,则删除列表中最后一个元素
     •extend(iterable) ---- 将iterable指定的元素添加到列表的末尾
     •index(value,[start,[stop]]) ---- 返回value现在出现在列表中的索引
     •sort(cmp=None, key=None, reverse=False) ---- 对列表元素在原位排序。注意这个方法改变列表,而不是返回排序后的列表。
     •reverse() ---- 把列表元素反序。
     •count(value) ---- 返回value在列表中出现的次数。

    3. 字典

    字典(Dictionary)是由“键-值”对组成的集合,字典中的值是通过键来引用的。

    3.1 字典的创建

    字典是由一系列的“键-值”对组成,“键-值”对之间用逗号隔开,并且被包含在一对花括号中。字典的创建格式如下:
    dictionary_name={key1:value1,key2:value2,……}
    其中,key1、key2表示字典的key值,value1、value2表示字典的value值。

    如果需要创建一个空的字典,只需要一对空的花括号即可,代码如下所示:
    dictionary_name={}

    3.2 字典的访问

    字典的访问与元组、列表有所不同,字典是通过key值来获得value值得,而不是通过索引。访问字典格式如下:
    valuen = dictionary_name[keyn]

    字典的添加和修改只需要一条赋值语句:
    dictionary_name['x']='value'

    字典莫有remove()。字典元素的删除可以调用del()实现,例如:
    del(dictionary_name['x'])

    字典也有一个pop()方法,该方法的声明和列表的pop()有所不同。字典pop()声明如下提示:
    D.pop(k[,d]) ->v
    pop()必须指定参数才能删除对应的值。其中,参数k表示字典的索引,如果字典中存在索引k,返回值v等于D[k],如果字典中么有找到索引k,返回值为d

    若果要清空字典中的所有内容,可以调用字典的clear()

    注意:由于字典是无序的,因此字典没有append()、remove()等方法。如果需要向字典中插入新元素,可以调用setdefault()

    3.3 字典的方法

    3.3.1 keys()和values()

    keys()和values()方法分别返回字典的key列表和value列表。
    dictionary_name.key()
    dictionary_name.values()

  • 相关阅读:
    [INS-32033] Central Inventory location is not writable
    ORACLE中的PL/SQL
    Oracle几大后台进程
    2016年中山市信息学竞赛暨全国信息学联赛成绩表(普及组)
    NOIP复习资料——往年习题精选
    迪杰斯特拉dijkstar(算法个人观点)
    【USACO题库】1.4.2 The Clocks时钟.TJ
    【USACO题库】2.1.2 Ordered Fractions顺序的分数.tj
    纪中2016.10.6比赛不明总结
    纪中2016.8.17比赛不明总结
  • 原文地址:https://www.cnblogs.com/doudongchun/p/3694823.html
Copyright © 2011-2022 走看看