七、Python:数据结构

来源:互联网 发布:sql2008数据库下载 编辑:程序博客网 时间:2024/05/01 22:17

      本章涉及到的Python数据结构非常重要,主要包括以下内容:

       ◆  列表(数组)

       ◆  元组(动态数组)

       ◆  字典(哈希表)

       ◆  引用

 

一、列表

           Python中的列表,是长度可变的数组,下面我们看两个例子:

# -*- coding: gb18030 -*- #例1#定义列表array=['b','c','d']print 'length=',len(array)     #输出=>length= 3print 'item_1=',array[1]       #输出=>item_1= c#输出列表中的元素for i in array:    print 'item is:',i         #输出=>item is: b item is: c  item is: d


#例2#2.1、为列表增加一个元素,只能单个的增加array.append('a')array.append('e')print 'after add items:',array          #输出=> after add items: ['b', 'c', 'd', 'a', 'e']#2.2、删除列表第5个元素del array[3]#2.3、对列表元素进行排序array.sort()print 'after sort items:',array         #输出=> after sort items: ['b', 'c', 'd', 'e']#2.4、列表,元组,字典都是序列,获取特定元素,和切片,-1表示从最后一个元素开始print array                             #输出=> ['b', 'c', 'd', 'e']print '1-3:',array[1:3]                 #输出=> 1-3: ['c', 'd']  备注[1:3]为前闭后开


 列表还有其他很多的方法,如下:

 

二、元组

           元组就是和列表都是数组,只是列表是长度可变的数组,而元组是长度固定的数组,相当于C、C++中的数组

# -*- coding: gb18030 -*- list_a =("1",2)print list_a    #=>输出('1',2)

 

三、字典

         字典也叫哈希表,可定义对应的键与键值,我们一个例子,就好理解了:

# -*- coding: gb18030 -*- #1、定义字典haxi={        'aa':'name'       ,'bb':'address'       ,'cc':'tel'     }#2、增加字典元素haxi['dd']='sex'#3、删除字典元素del haxi['bb']#4、输出字典元素的个数print 'haxi length=',len(haxi)#5、输出字典中指定的元素print 'key:aa=',haxi['aa']#6、输出字典中所有的元素for name ,address in haxi.items():    print (name,address)  #7、输出字典中所有部分print 'haxi items:',haxi#结果输出如下:'''haxi length= 3key:aa= name('aa', 'name')('cc', 'tel')('dd', 'sex')haxi items: {'aa': 'name', 'cc': 'tel', 'dd': 'sex'}'''


字典还有很多其他有用的方法,可根据帮助实践:

四、引用

           引用相当于列表的拷贝,我们看看如下的例子:

# -*- coding: gb18030 -*- z_list = ['a','b','c']copy = z_listdel copy[0]    print z_list   #=>输出 ['b', 'c']print copy     #=>输出 ['b', 'c']


从结果中,我们可以看出:此时删除引用列表中的第一个元素,实际上也把原来列表中的第一个元素删掉了

那如果我们不希望删除copy里的元素,不影响原来列表中的元素,该怎么办呢?

此时,我们将使用切片,可解决该问题,看下面的例子:

# -*- coding: gb18030 -*- shop=['1','2','3']mylist = shop[:]  #使用切片del mylist[0]     #此时不会影响shop中的元素,只是将引用mylist中的第一个元素删除print shop        #输出 => ['1', '2', '3']print mylist      #输出=> ['2', '3']


小结:       

本章内容非常重要,稍加练习,也很容易掌握!


 

 

 

 

     

 

原创粉丝点击