Python基本数据结构

Python是动态语言

list:类似数组,有序集合

  创建:L = [‘Michael‘, 100, True],可以在一个list中包含各种数据

  访问:按索引访问,如L[0];可倒序访问,如L[-1]表示访问list最后一个元素(注意越界问题)

  添加新元素:append()方法,追加元素到list末尾;如:L.append(‘Lisa‘)

        insert()方法,添加元素到指定位置;如:L.insert(0,‘Lisa‘),把‘Lisa’添加到索引为0的位置上

  删除元素:pop()方法,无参数时,删掉list的最后一个元素;如L.pop(),会打印出true

             有参数时,删掉对应元素;如L.pop(1),则删掉索引为1的元素

  替换元素:直接赋值;如L[0]=‘Lisa‘

       

tuple:有序列表,中文翻译为元组,一旦创建完毕不能修改

  创建: t = (‘Adam‘, ‘Lisa‘, ‘Bart‘)

  获取tuple元素的方式与list相同

   “可变”tuple:tuple中含有可变元素,

        如 t = (‘a‘, ‘b‘, [‘A‘, ‘B‘])

L = t[2]

         L[0] = ‘X‘

         L[1] = ‘Y‘

        此时tuple改变

表面上看,tuple的元素确实变了,但其实变的不是 tuple 的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向‘a‘,就不能改成指向‘b‘,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的

dict:含key和value,与数组类似,key值不可重复,key-value对没有顺序,key元素不可变

  创建:

d = {
    ‘Adam‘: 95,
    ‘Lisa‘: 85,
    ‘Bart‘: 59
}

  访问:可以简单地使用 d[key] 的形式来查找对应的 value,如d[‘Adam‘];

     判断key是否存在:if ‘Adam’ in d:……

    使用get()方法:d.get(‘Adam‘),如果key不存在则返回none

    for循环遍历

  更新:d[‘Paul‘] = 72,如果key存在则覆盖

set:持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。

  创建:调用 set() 并传入一个 list,list的元素将作为set的元素:s=set([1, 2, 3, 4])

  访问:set存储的是无序集合,所以我们没法通过索引来访问。访问 set中的某个元素实际上就是判断一个元素是否在set中。   ‘Bart‘ in s

    for循环实现遍历    for name in s:  ... print name

  添加:add()方法,如s.add(4);如果添加内容已存在,不会报错,不会继续添加

  删除:remove()方法,如s.remove(4);如果删除内容不存在,则报错,所以删除前进行判断:

 if name in s:
        s.remove(name)
 
时间: 2024-10-19 15:37:08

Python基本数据结构的相关文章

python 常用数据结构使用

python 字典排序 http://www.cnblogs.com/kaituorensheng/archive/2012/08/07/2627386.html 函数原型 sorted(dic,value,reverse) dic为比较函数,value 为排序的对象(这里指键或键值), reverse:注明升序还是降序,True--降序,False--升序(默认) 案例 dic = {'a':3 , 'b':2 , 'c': 1} 注意 排序之后原字典没有变,顺序依旧 python 常用数据结

python基本数据结构序列

python基本数据结构序列 ,六种内建序列类型:列表 元组字符串  Unicode字符串  buff对象和xrange对象 序列通用操作: 索引:元素的编号是从 0开始的 到索引号为负数时 查找方式是从右到左的 索引写在[]中 分片:类似索引的操作可以指定范围,当为一个对象创造副本时可以用 b = a[:] 这样的形式创建,这样 当 a被操作时不会影响 b  因为他们指向的不是同一块区域 相加:表示连接操作,列表连接后是新的列表不能改变列表原有的结构,序列相加时候要同种类型  进行,否则会报

用Python实现数据结构之二叉搜索树

二叉搜索树 二叉搜索树是一种特殊的二叉树,它的特点是: 对于任意一个节点p,存储在p的左子树的中的所有节点中的值都小于p中的值 对于任意一个节点p,存储在p的右子树的中的所有节点中的值都大于p中的值 一个图例: 基于二叉搜索树的这种关系,我们可以用它来实现有序映射 遍历二叉搜索树 基于二叉搜索树的特性,采用中序遍历的方式可以使得遍历结果是按照从小到大的顺序排列的.了解中序遍历可以参考用Python实现数据结构之树 这里还需要思考的一个内容是在基于中序遍历的前提下,如何求一个节点的后继节点或前驱节

python实现数据结构单链表

#python实现数据结构单链表 # -*- coding: utf-8 -*- class Node(object): """节点""" def __init__(self, elem): self.elem = elem self.next = None # 节点一开始初始化的时候并不知道下一个元素的地址,所以先设置为空 class SingLinkList(object): """单链表""

Python之‘数据结构’

简介 数据结构基本上就是--它们是可以处理一些数据的结构.或者说,它们是用来存储一组相关数据的.在Python里面有三种内建的数据结构--列表.元组和字典. 一.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.假象你有一个购物列表,上面记载着你想买的东西,就容易理解列表了.只不过在你的购物列表上,可能每样东西都独自占有一行,而在Python中,你在每个项目之间用逗号分隔. 列表中的项目应该包含在方括号中,这样Python就知道你在指明一个列表.一旦你创建一个列

python常见数据结构整理

Python中常见的数据结构可以统称为容器(container).序列(如列表和元组).映射(如字典)以及集合(set)是三类主要的容器. 一.序列(列表.元组和字符串) 序列中的每个元素都有自己的编号.Python中有6种内建的序列.其中列表和元组是最常见的类型.其他包括字符串.Unicode字符串.buffer对象和xrange对象.下面重点介绍下列表.元组和字符串. 1.列表 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能. (1).创

[0x01 用Python讲解数据结构与算法] 关于数据结构和算法还有编程

忍耐和坚持虽是痛苦的事情,但却能渐渐地为你带来好处. ——奥维德 一.学习目标 · 回顾在计算机科学.编程和问题解决过程中的基本知识: · 理解“抽象”在问题解决过程中的重要作用: · 理解并实现抽象数据结构: · 复习Python编程语言 二.写在前面 自第一台电子计算机使用线路和开关传达人类的指令以来,我们编程的思考方式有了很大的改变,在很多方面,计算机技术的发展为计算机科学家提供了众多的工具和平台去实现他们的想法.高性能理器,高速网络和大内存使得计算机研究者必须掌握在这样复杂的螺旋式通道中

python常用数据结构

python中有四种最常用的数据结构,分别是列表(list),字典(dict),集合(set)和元组(tuple) 下面简单描述下它们的区别和联系 1.初始化 不得不说,python数据结构的初始化比java是简单的多了. list=[] dict={} tuple=(1,2,) set=([1,2,3]) 初始化之后,print set 结果是:{1,2,3},可以发现,其实set就是没有value的dict 2.是否有序 list和tuple是有序的,dict和set是无序的 3.是否可变

python 5 数据结构

转载: http://www.cnblogs.com/known/archive/2010/09/03/1817499.html python中有三个内建的数据结构, 列表, 元组, 和 字典 1. 列表 (List) 列表用一堆方括号[] 表示, 没想数据之间用 逗号 隔开, 一旦你建立了一个列表, 你可以对它进行添加, 删除, 或搜索. 所以列表是可以改变的 2. 元组 元组和列表相似,但是 元组是不可以改变的!元组是用() 表示的, 每项数据之间也是用逗号隔开, 元组通常用在使语句或者用户

python和数据结构

在紧张的备考日语的过程中抽时间刷一下北京大学的python数据结构.查缺补漏. /整除 >>>divmod(9,5) (1,4) /复数 >>>import cmath >>>(1+2j)*(1+3j) (-5+5j) >>>(1+4j).imag 4.0 >>>(1+4j).real 1.0 早就已经知道的C语言要想使用一个变量必须先初始化,Python的变量机制是引用数据对象,例如赋值语句'a = 0'是创建a这