Python经典面试题及详细答案(实战版).docxVIP

  • 1
  • 0
  • 约4.07千字
  • 约 7页
  • 2026-08-24 发布于河北
  • 举报

Python经典面试题及详细答案(实战版).docx

Python经典面试题及详细答案(实战版)

一、Python基础核心面试题

1、简述Python中可变和不可变数据类型,分别有哪些?

答案:

核心区别:数据在内存中是否可以原地修改,修改后内存地址不变即为可变类型,地址改变即为不可变类型。

1、不可变类型:数值(int、float)、字符串str、元组tuple、布尔bool

这类数据一旦创建,无法在原内存地址修改,任何修改操作都会生成新的数据,开辟新内存地址。

2、可变类型:列表list、字典dict、集合set

这类数据可以在原有内存地址上直接增删改查,修改后数据地址保持不变。

补充实战点:元组本身不可变,但如果元组内部包含列表等可变元素,内部元素可以修改,比如t=(1,[2,3]),可以执行t[1].append(4)。

2、==和is的区别是什么?

答案:

1、==:判断两个对象的数值内容是否相等,默认调用对象的__eq__方法,只关注数据是否一致。

2、is:判断两个对象是否是同一个内存对象,核心比较的是内存地址(id值),地址完全一致才返回True。

经典案例:

a=[1,2,3]

b=[1,2,3]

print(a==b)#True,内容一致

print(aisb)#False,内存地址不同

小知识点:Python有小整数缓存机制(-5~256),这个范围内的整数复用

文档评论(0)

1亿VIP精品文档

相关文档