当你学习不熟悉的新东西的时候 , 一旦发现某样东西有效 , 那么你就会坚持使用它而放弃探索更多的可能性 。在Python中 , 那样东西就是列表 。
使用列表的感觉就像是在一直重复你最喜欢的特别动作 。
然后Python不止列表 , 还有元组和集合 。让我们回顾一下这些特殊的数据类型 , 并且说明在什么情境下应该使用它们而不是列表 。
文章插图
元组
元组是不变的有序项目序列 。最后一个词——不可变——是这里的秘密武器 。一旦定义了元组 , 就不能更改它 。
使用元组的语法几乎与列表相同 , 只是使用了括号而不是方括号 。此外 , 还可以将列表转换为元组 。
# how to define a listnum_list = [1,2,3,4]# how to define a tuplenum_tuple = (1,2,3,4)# use tuple() to convertnum_convert = tuple(num_list)
不可变有什么特别之处呢?一开始可能会觉得不方便;但是 , 每次使用元组而不是列表时 , 您都会做两件事 。- 编写更加语义化和安全的代码 。当您将变量定义为元组时 , 您是在告诉自己和代码的任何其他查看者:“这不会改变” 。为了防止您遗漏了备注 , 任何修改变量的尝试都会遇到一个错误 。
- 改善性能 。遍历元组将比遍历列表更快 。元组比列表的内存效率更高 。由于元组中的项数没有变化 , 因此它的内存占用更简洁 。
【请停止在Python中无休止使用列表】
集合集合是无序的、唯一的项集合 。集合不能有重复值 , 这就是它与列表的区别 。
若要定义集合 , 请使用大括号括起以逗号分隔的项列表 。不要将其与创建具有键-值对的字典混淆 。与元组一样 , 可以通过转换另一种数据类型来创建集合 。
# how to define a listnum_list = [1,2,3,4]# how to define a setnum_set = {1, 2, 3, 4}# use set() to convertnum_convert = set(num_list)
那么 , 如果两项完全相同会发生什么呢?nums = {1,2,3,4,4}print(nums) # 1,2,3,4
如您所见 , 第二个4被删除了 。如果原始值是重复项的列表 , 也会发生同样的情况 。那么 , 为什么要使用集合而不是列表呢?首先 , 转换为集合是删除重复值的最简单方法 。此外 , 与任何数据类型一样 , set有自己的一组方法 。
在比较多个集合时 , 集合是非常有用的——想想维恩图 。union()、intersection()和difference()函数将分别告诉您两个集合之间的组合值、共享值和不同值 。
总结
Python就是要为每个问题找到合适的工具 。
虽然列表是舒适的 , 可靠的 , 并在早期学习 , 可能有一个更好的工具 。
开始使用元组来更快地处理和保护已声明的数据结构 。开始使用集合来确保值的惟一性并利用比较方法 。
推荐阅读
- 如何关闭电脑弹窗广告???请这么做
- 手机首付分期付款条件是什么?
- 江南百景图野猪肉在哪个地图 江南百景图猪肉在哪个地图
- 小仓鼠在笼子里跑来跑去并且啃笼子 仓鼠一直在笼子里跑来跑去
- 安溪山区变化巨大,第五届全国茶产业经济研讨会在江苏常州隆重召开
- 关于月亮的歌曲分享
- 韭菜鸡蛋爱心饼的做法
- 菠菜汁鸡蛋饼的做法
- 双色鸡蛋饼的做法
- 超级精灵手表神秘精灵蛋在哪 超级手表精灵之所有精灵图片