【Python基础】数据类型与类型转换

五种基本数据类型

在 Python 中,基本数据类型是指不可变对象的数据类型。以下是 Python 中的基本数据类型:

  1. 整数类型(int):表示整数,例如 1、2、3 等等。
  2. 浮点数类型(float):表示带有小数点的数字,例如 1.0、2.5、3.14 等等。
  3. 复数类型(complex):表示形如 a+bj 的复数,其中 a 和 b 是浮点数,j 表示虚数单位。
  4. 布尔类型(bool):表示 True 和 False 两种值。
  5. 字符串类型(str):表示文本,
    • 由单引号''或者双引号""或者三引号""" """包裹起来的文本内容。例如 “hello”、“world” 等等。不过一般情况下三引号是用来表示注释的

这些基本数据类型是不可变的,也就是说它们的值一旦创建就无法被修改。这意味着每次对基本数据类型的操作都会返回一个新的对象,而原来的对象并不会被改变。例如,对整数类型进行加法操作时,会返回一个新的整数对象,而原来的整数对象并不会被修改。

除了这些基本数据类型,Python 中还有可变对象的数据类型,例如列表类型(list)、字典类型(dict)等等。与基本数据类型不同,对可变对象的操作可以改变对象的值,而不是返回一个新的对象。

另外,NoneType 代表了 None(空值)这个对象的数据类型,它通常被用来表示变量或函数返回值的缺失或空值。与基本数据类型类似,NoneType 也是不可变的对象。NoneType 虽然不是 Python 的基本数据类型,但它仍然是一种常见的数据类型,具有一些基本数据类型的特征,比如不可变和常量性,

不可变数据类型

Python中的不可变数据类型是指在创建后不能修改其内部状态的数据类型,因为它们的值在创建后就被固定下来,不可改变。Python中的主要不可变数据类型包括:

数字(Number):包括整数(int)、浮点数(float)、复数(complex)等,一旦创建就不能修改其值。

字符串(String):是由单个字符或者字符串序列组成的不可变序列,一旦创建就不能修改其内容。

元组(Tuple):是由一组有序的、不可重复的元素组成的序列,一旦创建就不能再进行修改。

布尔型(Boolean):只有两个取值,即True和False。

冻结集合(Frozen Set):是一种不可变的集合类型,可以看做是集合的不可变版本,一旦创建就不能再进行修改。

需要注意的是,虽然不可变数据类型的值不能被修改,但是它们可以被重新赋值为其他的值。例如,一个整数变量可以被重新赋值为另一个整数,但是不能修改原来的整数值。同时,在Python中,字符串和元组等不可变类型也可以进行拼接、切片和索引等操作,但是这些操作并不会修改原来的值,而是返回一个新的对象。

可变数据类型

Python中的可变数据类型是指在创建后可以通过修改其内部状态来改变其内容的数据类型。Python中的主要可变数据类型包括:

  1. 列表(List):列表是Python中最常用的可变数据类型之一。列表中可以包含任意类型的元素,并且可以通过索引和切片来访问和修改其元素。
  2. 字典(Dictionary):字典是Python中另一个常用的可变数据类型。字典中的元素是以键值对的形式存储的,可以通过键来访问和修改其值。
  3. 集合(Set):集合是Python中用于存储唯一元素的可变数据类型。集合支持多种操作,例如交集、并集、差集等。
  4. 字节数组(Bytearray):字节数组是一种可变的二进制数据类型,可以通过修改其元素来改变其内容。
  5. 队列(Queue):队列是Python标准库中提供的一种可变数据类型,可以通过添加或删除元素来改变其内容。队列支持多种操作,例如入队、出队等。
  6. 堆(Heap):堆是一种可以动态添加或删除元素的可变数据类型,可以通过堆排序来维护其内部的元素顺序。

类型转换

在 Python 中,可以使用一些内置函数来进行类型转换。以下是一些常用的类型转换函数:

  1. int():将一个数值或字符串转换成整数。例如,int(‘123’) 返回 123。
  2. float():将一个数值或字符串转换成浮点数。例如,float(‘3.14’) 返回 3.14。
    1. float("inf")是无穷大
  3. str():将一个对象转换成字符串。例如,str(123) 返回 ‘123’。
  4. bool():将一个值转换成布尔类型。例如,bool(0) 返回 False,bool(1) 返回 True。
  5. list():将一个可迭代对象转换成列表。例如,list(‘hello’) 返回 [‘h’, ‘e’, ‘l’, ‘l’, ‘o’]。
  6. tuple():将一个可迭代对象转换成元组。例如,tuple([‘a’, ‘b’, ‘c’]) 返回 (‘a’, ‘b’, ‘c’)。
  7. set():将一个可迭代对象转换成集合。例如,set([1, 2, 3]) 返回 {1, 2, 3}。
  8. dict():将一个可迭代对象转换成字典。例如,dict([(‘name’, ‘Alice’), (‘age’, 18)]) 返回 {‘name’: ‘Alice’, ‘age’: 18}。

类型转换并不总是能够成功。例如,如果尝试将一个非数值或非字符串的对象转换成整数或浮点数,会引发 TypeError 异常。因此,在进行类型转换时需要注意类型的兼容性。

猜你喜欢

转载自blog.csdn.net/qq_34850830/article/details/129274397