黑马程序员Python教程:教你使用Python集合

上传人:M****1 文档编号:498733843 上传时间:2023-07-31 格式:DOCX 页数:9 大小:44.61KB
返回 下载 相关 举报
黑马程序员Python教程:教你使用Python集合_第1页
第1页 / 共9页
黑马程序员Python教程:教你使用Python集合_第2页
第2页 / 共9页
黑马程序员Python教程:教你使用Python集合_第3页
第3页 / 共9页
黑马程序员Python教程:教你使用Python集合_第4页
第4页 / 共9页
黑马程序员Python教程:教你使用Python集合_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《黑马程序员Python教程:教你使用Python集合》由会员分享,可在线阅读,更多相关《黑马程序员Python教程:教你使用Python集合(9页珍藏版)》请在金锄头文库上搜索。

1、定义集合 集合就像篮子,你可以放进和取出东西,可以是同一类的东西,也可以是不同类的。基本上 它是个让你收集东西的存储结构。比如你有一个车的类型(car),创建了几种车,想把这些车放在一起又容易找到,就是运用 集合非常好的场景。集合存在于内存中。你不需要创建集合或者任何架板,这些都是现成的。只要有个变量就可 以往里面放车子了。完了之后你就可以根据名字或者索引(在集合中的参数)把他们取出ython提供了许多自建类型归属于集合类,但是没有一个叫collection的类型,他们是lists, mappings, 和 sets。list列表:list是Python内置的一个数据类型。list是可变的允许

2、添加同一类型或不同类型的元素,类似于其他语言中的指针。下面的例子是创建列表并添加元素:alist = iteml, item2, 4 注意这个列表成分混杂,包含了字符串和整数类型。要取回列表中的元素,只需引用该元素的索引序号。Python列表序号是从零开始的,如果 我要最后一个元素,它是第3位,我需要用2来索引:alist 2 4系统返回了 4。取列表中的元素时,只要从它的位置减去1就得到正确的索引序号 检查列表长度用len命令:len(alist)阮育It密曲下 用词IT救曲品脾向列表添加元素用append()函数:alist.append(False)len(alist) 4我们增加了一位

3、列表长度,添加了一个数据类型布尔类型。列表并没有表示任何不满。我们可以调用remove()移除列表元素:alist.remove(item2)remove()没有返回参数,列表会被更新,现在它包含三个元素:iteml, 4, False有几种方法将元素从列表中取出。我们前面说过用索引访问元素,如果我访问索引2,将会 得到元素 3。thevalue = alist2 print(thevalue) False上面的代码为我们复制了元素,元素还在列表中,列表的长度不会受到影响。然而我们用 pop(), 在得到元素的同时将元素移除了列表:thevalue = alist.pop(1) print(t

4、hevalue) 4print(after pop, alist) iteml , False 列表也可以被排序,我们有包含字符串的列表:alpha = z, b, a, c你可以用sort()命令来排序:alpha.sort()没有返回值,但alpha已经被排序了,你可以打印出来看看:print(alpha)a,b, c元素可以被反序排列,只需引用 reverse():alpha.reverse字符串是列表吗?字符串与列表有很多相似之处,但字符串是不可改动的,而列表可以随意修改。字符串可以向列表一样索引。你可以像数列表中元素一样数出字符串中的字符 比如:mystring = The quic

5、k brown fox.print(len(mystring ) 20print(mystring4) q和列表不一样的是你不能追加字符,也不能更改字符串中特定位置字符。我们看一下给特定位置分配字符会出现什么情况:mystring4 = z TypeError: str object does not support item assignment根据字符串,可以将它转化成列表。取上面用到的mystring变量,我们用split(),它会在空 格断开:stringlist = mystring.split()stringlist The, quick, brown, fox.type(stri

6、nglist) Thequickbrownfox.type(stringlist2) 76和列表一样,可以查看字典的长度:len(mydictionary) 3改变item2的值,可以直接给他赋值:mydictionaryitem2 = 100 增加元素也是直接赋值: mydictionaryitem62 = 433 item62 现在就存在于字典了,字典长度加1。根据键可以删除字典元素:del mydictionaryitem2前面提到字典是键/值成对出现,如果我们只要键可以这样做mydictionary.keys() dict_keys(item3 , iteml, item62)访问值也

7、是同样的方法:mydictionary.values() dict_values(145, 45, 433)Setsset是无序的集合,不能有重复的元素,也不能排序,sort()是不能使用的。同列表相比 set 验证元素是否存在会更快。创建一个 set:myset = 3, 4, 5, 1或者用 set 语句来转化已存在的类型:multistory = 0,1,5,4,3,7,6,6myself = set(multistory) 0,1,3,4,5,6,7因为set只能包含唯一的元素,所以重复的6被移除了。从已有数据创建唯一元素集合,set() 是个非常好的方法。如果我试图让移除的6回来,它

8、是不会理会的:myself.add(6) 0, 1, 3, 4, 5, 6, 7要移除 set 中元素需要用 remove():www汕已伽eonset 也不支持索引,用序号来访问,它会返回错误:myset2 TypeError: set object does not support indexingset有些独有的方法,如果你熟悉set的数学方法(difference, intersection和union),会很好用。我们从 difference 开始,假设我有两个 set:setl = 1,3,6,7set2 = 1,3,6,8,10用 set1 和 set2 做 difference

9、 会得到 7, 7 在 set1 而不在 set2。set1.difference(set2) 7反过来用 set2 和 set1 做对比set2.difference(set1) 8, 10也可以来找它们的相同部分:set.intersection(set2) 1, 3, 6最后来看把它们合并起来形成一个新的 setset3 = set1.union(set2) 1, 3, 6, 7, 8, 10改变中ansi育atiii正在n动新的 set 包含它们两个中所有元素。总结我们看过了 list, string (虽然不属于集合),dictionary和set。学习了它们所有的特定运算 和独有功能。希望这个介绍可以让你对 Python 的集合多点认识。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号