列表:list

列表list是一个可变的有序集合,可以随时添加和删除其中的元素

  1. 声明一个列表
>>> demo=['Tom','Bob','LiLei']
>>> print(demo)
['Tom', 'Bob', 'LiLei']
  1. 获取列表元素的个数
>>> len(demo)
3
  1. 访问某个元素
>>> demo[0]
'Tom'
  1. 访问最后一个元素
#最后一个元素
>>> demo[-1]
'LiLei'
#倒数第二个元素
>>> demo[-2]
'Bob'
  1. 添加元素
>>> demo.append('demo1')
>>> print(demo)
['Tom', 'Bob', 'LiLei', 'demo1']
  1. 插入指定的位置
>>> demo.insert(1,'demo2')
>>> print(demo)
['Tom', 'demo2', 'Bob', 'LiLei', 'demo1']
  1. 删除元素
#删除末尾的元素
>>> demo.pop()
'demo1'
#删除指定索引的元素
>>> demo.pop(1)
'demo2'
  1. 替换元素值
>>> demo[0]='Tom1'
>>> print(demo)
['Tom1', 'Bob', 'LiLei']
  1. list元素可以为不同的数据类型,可以是一个list
>>> demo2 = ['Apple', 123, True]

元组:tuple

元组一旦初始化就不能修改, 这里的不能修改是指元素指向不变。

  1. 声明元组
#声明一个元组
demo = ('Michael', 'Bob', 'Tracy')
#声明一个空元祖
demo = ()
#定义只有一个元素的元组
demo = (1,)

字典:dict

采用键-值(key-value)存储,就是java里的map,查询效率高,时间复杂度一般都是O(1),切它是无序的

  1. 声明一个dict
name_ageMap = {'tom':10, 'Bob':29}
  1. put
name_ageMap['LiLei'] = 67
  1. 取值:通过key来取值
  • 方式一
name_ageMap['tom']

如果key值不存在,会报错,可以通过下面方式先判断key是否存在

if 'tom' in name_ageMap:
    print name_ageMap['tom']
  • 方式二
name_ageMap.get('tom')
name_ageMap.get('tom1', -1)
-1
  1. 删除
name_ageMap.pop('tom')

删除key为tom的键值对

注意:dict的key必须是不可变对象,因为一旦key的状态发生变化,get时,计算哈希值发生变化,返回的可能非原value

set

set和dict类似,也是一组key的集合,但不存储value,不能重复,实现原理和dict相同,只是不存储value

  1. 声明
#声明一个空set
s = set()
#声明一个有默认值set
s = set([1, 2, 3])

  1. 添加
#可以重复添加,但是不会有效果
s.add('set')
  1. 删除
s.remove('set')
posted on 2017-07-28 16:09  行走在云端的愚公  阅读(113)  评论(0编辑  收藏  举报