「这是我参与2022首次更文挑战的第8天,活动详情查看:2022首次更文挑战」。
面试题第八关:
第一部分——考点:
- 了解列表和元组的主要区别
第二部分——面试题:
1.面试题一:请详细描述列表与元组的区别,并举例说明。
第三部分——解析:
面试题一 之 列表与元组的区别,并举例说明:
(1)语法差异:
a = (1,2,3) # 元组
b = [1,2,3] #列表
(2)元组是只读的,列表是可读写的:
b[1] = 3 #可执行
b(1) = 4 #抛出异常
(3)使用tuple函数后,元组仍然为自身,而使用list函数后,会复制一个新列表:
copy_a = tuple(a)
print(a is copy_a) # True
copy_b = list(b)
print(b is copy_b) # False
(4)大小不一样,元组占用的空间更小(大的内存块),当元素比较多时,元组速度更快:
print(a.__sizeof__())
print(b.__sizeof__())
第四部分——知识补给站:
①关于列表和元组这些区别本质上是因为两者在设计哲学上的不同:
- 列表可被用于保存多个互相独立对象的数据集合;
- 元组用于描述一个不会改不安的事务的多个属性。
②上面我们说过,元组是静态的,那么元组的静态特性有什么好处呢?
答案是资源缓存。
- Python是一门垃圾收集语言,这意味着当一个变量不再被使用时,Python会将该变量使用的内存释放,以供别人使用。然而,对于特定长度的元组,即使它们没有被使用,它们的内存空间也不会立刻释放,而是留待未来使用!
🔆In The End!
👑有关于Me
个人简介:我是一个硬件出身的计算机爱好者,喜欢program,源于热爱,乐于分享技术与所见所闻所感所得。文章涉及Python,C,单片机,HTML/CSS/JavaScript及算法,数据结构等。
| 从现在做起,坚持下去,一天进步一小点,不久的将来,你会感谢曾经努力的你! |
|---|
认真仔细看完本文的小伙伴们,可以点赞收藏并评论出你们的读后感。并可关注本博主,在今后的日子里阅读更多技术文哦~
如有错误或者言语不恰当的地方可在评论区指出,谢谢!
如转载此文请联系我征得本人同意,并标注出处及本博主名,谢谢 !