组合数据类型练习:
分别定义字符串,列表,元组,字典,集合,并进行遍历。
总结列表,元组,字典,集合的联系与区别。
#字符串 str1 = {'Hello World'} for i in str1: print(i) #列表 str2 = ['张三','李四','王五'] for i in str2: print(i) #元组 list1 = ['a','b',['A','B']] tuple1 = tuple(list1) for i in tuple1: print(i) #字典 names = ['赵','钱','孙','李','周','吴'] scores = [90,100,100,95,80,30] d = dict(zip(names,scores)) print(d) print(d.items()) for n,s in d.items(): print(n,s) #集合 st = set([1,10,'i',3,4,5,'z',8]) for s in st : print(s)
总结列表,元组,字典,集合的联系与区别。
(1)列表是任意对象的序列,用方括号表示。list是一种有序的集合,可以随时添加、修改和删除其中的元素,是一个可变的有序表,所以,可以往list中追加元素到末尾,没有长度限制,元素的数据类型也可以不同。
(2)将一组值打包到一个对象中,称为元组。元组用圆括号表示。
元组和列表的大部分操作相同。但是,列表是不固定的,可以随时插入,删除;而元组一旦确认就不能够再更改。所以,系统为了列表的灵活性,就需要牺牲掉一些内存;而元组就更为紧凑。
(3)与列表和元组不同,集合是无序的,也不能通过索引进行访问。此外,集合中的元素不能重复。
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。要创建一个set,需要提供一个list作为输入集合。
(4)字典就是一个关联数组或散列表,其中包含通过关键字索引的对象,使用键-值(key-value)存储,具有极快的查找速度。用大括号表示。与集合相比,通过关键字索引,所以比集合访问方便。字典是Python解释器中最完善的数据类型。
和列表比较,字典有以下几个特点:1.查找和插入的速度极快,不会随着key的增加而变慢;2.需要占用大量的内存,内存浪费多。而列表相反:1.查找和插入的时间随着元素的增加而增加;2.占用空间小,浪费内存很少。