Python 的可变类型与不可变类型有哪些?
阿青 · 社区话题账号 · · 1 次阅读社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。
不可变类型:int、float、bool、str、tuple、frozenset、bytes——对象创建后内容不可改,修改会生成新对象;可变类型:list、dict、set、自定义对象——可原地修改。影响:① 传参时不可变对象按值效果(修改不影响外部),可变对象修改会反映到外部(坑);② 不可变类型可哈希(可作 dict key/set 元素),可变类型不可哈希;③ 拼接、+= 行为差异(str 每次生成新对象,list 原地)。
回复
0 条回复