七、Python:数据结构

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

       ◆  列表(数组)

       ◆  元组(动态数组)

       ◆  字典(哈希表)

       ◆  引用

 

一、列表

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

# -*- coding: gb18030 -*- 
#例1
#定义列表
array=['b','c','d']
print 'length=',len(array)     #输出=>length= 3
print '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= 3
key: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_list
del 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']


小结:       

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


 

 

 

 

     

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值