Python之List、Set、Tuple、Dictionary的区别

来源:互联网 发布:51网络论坛 编辑:程序博客网 时间:2024/06/15 10:31

本文将讲述Python中的内置数据类型List、Set、Tuple、Dictionary之间的区别。

集合类型List

  • list名为列表,相当于一个数组

  • list列表是有序的,其中的每个元素都分配一个位置索引,索引值从0开始

  • list的长度是自动变化的

  • list列表元素不必都是同一种类型

  • list列表可以进行截取、组合、修改、增加等操作

  • list列表中的元素用中括号[]来表示

list = [12, 'Yummy', 19.2, [1, 3, 'zhan']]print(list[0])      # 打印list集合第一个元素list.append(3.2)    # 添加元素到list末尾print(list)list.insert(1,'23')      # 在指定位置添加元素print(list)list.pop()          # 删除最后尾部元素print(list)list[1] = 'replace' # 复制替换指定元素print(list)

这里写图片描述

集合类型Tuple

  • Tuple名为元组,可以看做是一种“不变”的List,即tuple一旦创建完毕,就不能修改了

  • Tuple元组中的元素用小括号()来表示

tuple = (3.14,'yu',[3,1,2])print(tuple)tuple[1] = 'a'

这里写图片描述

集合类型Dictionary

  • Dictionary名为字典,相当于一个HashMap

  • Dictionary字典查找速度快,但是代价是耗费的内存大。List相反,占用内存小,但是查找速度慢。这就好比是数组和链表的区别

  • Dictionary字典没有顺序,而List是有序的集合,所以不能用Dict来存储有序集合

  • Dictionary字典的Key不可变,Value可变。一旦一个键值对加入dict后,它对应的key就不能再变了,但是Value是可以变化的

  • Dictionary字典中的Key不可重复

  • Dictionary字典中的元素用中花括号{}来表示

dic = {'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4}print(dic)print(len(dic)) #打印dic的长度print(dic['b']) #打印key为'b'的value值# 遍历dicfor key in dic :    print(key,':',dic.get(key))# 合并dicdic2 = {'aa' : 2, 'bb' : 3}dMerge = dict(dic, **dic2)print(dMerge)

这里写图片描述

集合类型Set

  • set就像是把Dict中的key抽出来了一样,类似于一个List,但是内容又不能重复

  • set集合是无序的

  • set集合通过调用set()方法创建

set = set(['A','B','C','B','C'])print(set)print('A' in set) # 判断元素是否在set中# 遍历setfor s in set:    print(s)set.add(4) # 添加元素print(set)set.remove('A') # 删除元素print(set)

这里写图片描述

原创粉丝点击