美文网首页
Python数据结构之容器2018-11-19

Python数据结构之容器2018-11-19

作者: 默默而行 | 来源:发表于2019-06-09 20:12 被阅读0次

    python数据结构之容器

    数据结构在计算机科学中是指的是使用计算机对数据进行存储、组织的方式。python中容器(container)包含序列映射,序列以索引(index)标注元素,例如序列、元组等;映射以键(key)标注元素,例如字典。

    • 列表(list)
    • 元组(tuple)
    • 字符串(string)
    • 字典(dict)

    python中索引的规则为由0开始(0,1,2,3...),这与日常计数习惯是不同的。

    python中索引可以倒数,即索引系列....n-2,n-1,n,可以记为...-3,-2,-1

    列表 list

    • 列表是一种序列。

    • 列表中的值可以进行修改,所以列表不可用作字典的键等不可修改的场合。

    • 列表可以嵌套,即列表以列表为元素,可以用于二维或更高维数组的表示。

    • 创建列表

      • 创建空列表 examp_list = []
      • 由字符串生成列表 examp_list = list("string") 逆操作`"".join(examp_list)
      • 指定个数的相同元素 examp_list = [42]*100
    • 切片(slicing)

    examp_list[begin : end : step]
    - 切片是非常有效的一个运用,可以起点、终点、步长截取列表中的某个子集。
    - 起点或终点省略则取该方向的边界值,步长省略默认为1
    - 切片也可以用于为序列指定范围赋值 examp_list[2:4] = [value]

    • 成员资格(in) 判断是否为序列的值
    • 内建函数(len/min/max/del) 取序列的个数、最大值、最小值、删除元素
    • 列表方法
      • append 在序列末尾添加元素
      • count 统计序列中指定元素的个数
      • extend 在列表末尾添加另一个序列中的多个值
      • index 查找指定值匹配项的索引位置
      • insert 在指定位置插入指定值
      • pop 移除并返回序列中指定值,默认为末尾元素
      • remove 移除列表中指定值的第一个匹配项
      • reverse 列表中元素反向存放
      • sort 对列表排序

    元组 tuple

    • 元组是一种序列
    • 元组中的值不可以修改,所以元组常用于字典键值等不应修改的场合。
    • 元组与列表相似,创建时使用(),若创建只含一个元素的元组,需添加一个,,即: t = (1,)
    • 列表各种操作,除会改变元组元素的操作外,都适用于元组(毕竟元组是不可以修改的)。

    字符串 string

    • 字符串是一种序列。
    • 字符串元素与元组相类似,不可改变。
    • 字符串的格式化与C语言中基本相似不在此赘述。
    • 字符串方法
      • find 从字符串中查找指定子集并返回子集最左端索引。
      • split 按指定的分隔符,把字符串分割成列表;join的逆运算。
      • join 用指定分隔符,把字符串列表连接成字符串;split的逆运算。
      • lower 返回字符串小写字母版。
      • replace 返回以指定字符串代替字符串后的字符串。
      • strip 返回去除两侧空格后的字符串。
      • translate 单字符按maketrans创建的参数表替换。

    字典 dict

    d = {"key1":val1,"key2":val2,...}

    • 键应为不可变类型

    • 基本制作

      • len 返回字典中元素个数
      • d[k] 返回键k的值
      • d[k] = v 键k赋值v
      • del d[k] 删除键k项
      • k in d 判断k是否为d中键
      • clear 清除字典中所有项
      • copy 返回键-值对相同的新字典
      • fromkeys 用指定键建立新字典,值默认为None
      • get 访问指定键的值,可以避免键不存在时的错误提示
      • has_key 判断字典中是否含有特定键,与in功能相似,python3中不再有此函数
      • items 以列表形式返回字典中所有键-值对
      • iteritems 以迭代器形式返回字典键-值对
      • keys 以列表形式返回所有键
      • iterkeys 以迭代器形式返回字典所有键
      • values/itervalues 与上面keys、iterkeys相似
      • pop 返回指定键的值,并删除键值对
      • popitem 随机(因为无序嘛)返回键-值对,并删除
      • update 利用字典项更新另一个字典

    相关文章

      网友评论

          本文标题:Python数据结构之容器2018-11-19

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