Python面试题(知乎风格)及详细答案.docxVIP

  • 1
  • 0
  • 约1.47万字
  • 约 15页
  • 2026-06-10 发布于河北
  • 举报

Python面试题(知乎风格)及详细答案.docx

Python面试题(知乎风格)及详细答案

一、基础必问(校招/初筛高频,知乎初面必考)

1.面试官:说说Python里列表(list)和元组(tuple)的区别,实际开发里什么时候用哪个?

答案:核心区别就一个——可变性。列表是可变的(mutable),元组是不可变的(immutable),这一点直接决定了用法,不是死记概念,而是看场景。

具体说:列表用[],能随时append、pop、修改元素,适合需要动态增删数据的场景,比如存用户提交的表单数据、循环中不断添加的结果;元组用(),一旦创建就不能改元素,适合存固定不变的数据,比如坐标(100,200)、接口返回的固定字段(姓名、ID),还有字典的key必须是不可变对象,所以元组能当key,列表不行。

补充个实际坑:很多人以为元组里的元素一定不能改,其实如果元组里嵌套了列表,列表里的元素是能改的(比如t=(1,[2,3]),t[1].append(4)是可以的),因为元组存的是列表的引用,不是列表本身。另外,元组的性能比列表好一点,因为不可变对象在内存中更稳定,适合数据量固定的场景。

2.面试官:==和is的区别,举个实际开发中容易踩坑的例子?

答案:别搞复杂,一句话说清:==比的是“值相等”,is比的是“内存地址相等”(也就是两个变量是不是指向同一个对象)。

实际踩坑例子太常见了:比如a=256,b=25

文档评论(0)

1亿VIP精品文档

相关文档