原文链接:http://www.pythontab.com/html/2017/pythonjichu_0714/1153.html
Python数据类型分为值类型和引用类型, 下面我们看下它们的区别:
值类型:
对象本身不允许修改,数值的修改实际上是让变量指向了一个新的对象
包含:字符串、元组、数值,本身不允许被修改
引用类型:
对象本身可以修改,
包含:列表、字典,本身允许修改
例子:
结果:
修改值类型的值,只是让它指向一个新的内存地址,并不会改变变量b的值
结果:
修改引用类型的值,因为listb的地址和lista的一致,所以也会被修改
一般只为了复制值,可以使用分片操作
下面在单独看下python的值类型和引用类型
值类型:
包含:字符串、元组、数值,本身不允许被修改
引用类型:
包含:列表、字典,本身允许修改
修改值类型的值,只是让它指向一个新的内存地址,并不会改变变量b的值
修改引用类型的值,因为listb的地址和lista的一致,所以也会被修改
一般只为了复制值,可以使用分片操作
总结
以上所述是小编给大家介绍的Python引用类型和值类型的区别与使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关推荐
在Python编程语言中,理解传递值(值传递)和传递引用(引用传递)的区别对于编写高效且符合预期的程序是非常重要的。Python中的参数传递机制与一些其他语言(如C++或Java)中的机制不同,这导致了在传递变量时可能...
在Python编程中,变量的类型可以分为可变类型和不可变类型两大类。理解这一概念对于掌握Python内存管理、函数参数传递以及数据结构的操作至关重要。 首先,要了解的是Python中的变量名与内存地址的关系。当在Python...
PyIntObject是Python实现整数类型的基础,它包含了整数值、引用计数等信息。文档中可能涵盖了整数的存储方式、运算效率优化,以及Python如何处理大整数(BigInt)等内容。 3. **字符串对象PyStringObject**:字符串...
在上述讲解中,我们已经涵盖了Python程序实例解析的要点,包括温度转换的算法设计、Python的缩进规则、注释、变量命名、保留字以及赋值语句的使用。这些知识是Python初学者的基础,通过实践这些实例,我们可以更好地...
Python提供了丰富的异常类型,这些异常被组织成一个层次结构,使得处理和捕获特定类型的错误更加方便。以下是对标题和描述中提到的“Python:通用异常类型表”的详细说明: 1. **BaseException**:所有异常的基类。...
Python是一种广泛使用的高级编程语言,它以其简洁明了的语法和强大的功能而受到程序员的青睐。本学习笔记将深入探讨Python的动态类型系统、类型检查、多态性以及数字类型处理的相关知识点。 在Python中,变量没有...
- **单引号和双引号**:单引号和双引号在Python中基本上可以互换使用,它们用于创建单行字符串。例如: ```python s1 = 'Hello, world!' s2 = "Hello, world!" ``` - **三引号**:三引号主要用于创建多行字符...
Python提供了三种类型的方法:静态方法、类方法和实例方法。 - **实例方法**通常带有`self`参数,用于处理特定实例的数据。 - **类方法**使用`cls`参数,主要用于处理类级别的数据,可以被类实例调用。 - **静态...
- 在Python 3中,不再区分经典类和新式类,所有的类都被认为是新式类,并且默认继承自`object`类。 #### 八、面向对象优化代码示例 **原始代码:** ```python def exc1(host, port, db, charset, sql): conn = ...
2. **基于值的内存管理**:Python使用引用计数和垃圾回收机制来管理内存,这意味着如果多个变量引用同一个值,它们实际上都指向内存中的同一个位置。当改变其中一个变量的值时,Python会创建一个新的对象,并更新...