python的可变对象和不可变对象

打印 上一主题 下一主题

主题 555|帖子 555|积分 1665

在Python中,变量的范例可以分为可变范例(Mutable types)和不可变范例(Immutable types)。以下是一些常见的范例:
不可变范例(Immutable types)


  • 整数(int) - 例如:10, 20
  • 浮点数(float) - 例如:3.14, 2.71
  • 布尔值(bool) - 例如:True, False
  • 字符串(str) - 例如:"hello", "world"
  • 元组(tuple) - 例如:(1, 2, 3)
  • 冻结集合(frozenset) - 例如:frozenset([1, 2, 3])
可变范例(Mutable types)


  • 列表(list) - 例如:[1, 2, 3]
  • 字典(dict) - 例如:{"name": "Alice", "age": 25}
  • 集合(set) - 例如:{1, 2, 3}
  • 字节数组(bytearray) - 例如:bytearray(b'hello')
  • 内存视图(memoryview) - 例如:memoryview(bytes(10))
说明



  • 不可变范例:一旦创建,其内容不能被改变。如果你试图修改一个不可变范例的值,实际上会创建一个新的对象,而不是修改原始对象。
  • 可变范例:可以修改其内容,比如添加、删除或改变元素。
示例



  • 不可变范例示例: python
    a = 10 b = a a = 20 print(b) # 输出 10,b没有被修改
  • 可变范例示例: python
    a = [1, 2, 3] b = a a.append(4) print(b) # 输出 [1, 2, 3, 4],b也被修改了
在函数参数通报中,不可变范例会通报其值的副本,而可变范例会通报其引用的副本。这意味着如果你在函数内部修改了可变范例的参数,原始对象也会被修改。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

愛在花開的季節

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表