Python 中的数据类型有哪些
Python 中的数据类型有哪些?
Python 是一种动态类型语言,支持多种内置数据类型,并且可以自定义数据类型。以下是 Python 中常见和重要的数据类型:
一、基本数据类型
-
整数(int)
- 表示整数,没有小数点。
- 示例:
x = 10
。
-
浮点数(float)
- 表示带有小数的数字。
- 示例:
y = 3.14
。
-
布尔值(bool)
- 表示真(True)或假(False)。
- 示例:
a = True
,b = False
。
-
字符串(str)
- 表示文本数据,用单引号、双引号或三引号包围。
- 示例:
name = "Alice" description = 'This is a string.' multi_line = """Hello,world!"""
二、序列类型
-
列表(list)
- 是有序的、可变的数据集合,元素之间用逗号分隔,并用方括号包围。
- 示例:
my_list = [1, 2, 3] mixed_list = ["apple", 42, True]
-
元组(tuple)
- 是有序的、不可变的数据集合,元素之间用逗号分隔,并用圆括号包围。
- 示例:
my_tuple = (1, 2, 3) single_element_tuple = (42,) # 注意结尾的逗号
-
字符串(str)
- 字符串也是一种序列类型,可以使用索引和切片操作。
- 示例:
s = "hello" print(s[0]) # 输出 'h' print(s[:2]) # 输出 'he'
-
字典(dict)
- 是无序的、可变的数据结构,用于存储键值对。
- 示例:
my_dict = {"name": "Alice", "age": 30} print(my_dict["name"]) # 输出 'Alice'
-
集合(set)
- 是无序的、不可重复的数据结构,用于存储唯一元素。
- 示例:
my_set = {1, 2, 3} another_set = set([4, 5, 6])
三、其他内置数据类型
-
空值(NoneType)
- 表示“无”或“空”,用
None
表示。 - 示例:
x = None print(type(x)) # 输出 <class 'NoneType'>
- 表示“无”或“空”,用
-
复数(complex)
- 表示复数类型,形式为
a + bj
。 - 示例:
c = 3 + 4j print(c.real) # 输出实部 3.0 print(c.imag) # 输出虚部 4.0
- 表示复数类型,形式为
四、自定义数据类型
-
类(class)
- 可以通过面向对象编程定义自己的数据类型。
- 示例:
class Person:def __init__(self, name, age):self.name = nameself.age = agealice = Person("Alice", 30) print(alice.name) # 输出 'Alice'
-
枚举(enum)
- 使用
Enum
模块可以定义枚举类型,表示一组常量。 - 示例:
from enum import Enumclass Direction(Enum):NORTH = "N"SOUTH = "S"print(Direction.NORTH.value) # 输出 'N'
- 使用
五、动态类型的特性
- Python 是动态类型语言,变量的类型在运行时确定。
- 可以使用
type()
函数查看变量的类型:x = 10 print(type(x)) # 输出 <class 'int'>
六、不可变与可变类型
-
不可变类型:一旦创建,其内容不能被修改。例如:
int
、float
、bool
、str
、tuple
。- 示例:
a = (1, 2) a[0] = 3 # 报错,元组不可变
- 示例:
-
可变类型:允许修改其内容。例如:
list
、dict
、set
。- 示例:
my_list = [1, 2] my_list.append(3) # 修改列表的内容 print(my_list) # 输出 [1, 2, 3]
- 示例:
总结
Python 提供了丰富的内置数据类型,涵盖了整数、浮点数、字符串、列表、元组、字典、集合等。此外,还可以通过面向对象编程定义自定义数据类型。理解这些数据类型的特性和使用场景,是编写高效 Python 代码的关键。