- 1
- 0
- 约4.07千字
- 约 7页
- 2026-08-24 发布于河北
- 举报
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)