Python 数据类型
English version: Python Data Types
Python 内置数据类型,按用途与可变性分类。
概述
Python 提供多种内置数据类型。每种类型决定了变量可以保存什么样的值以及可以对其执行什么操作。一个重要的属性是可变性:对象在创建后是否可以被修改。
内置类型总览
| 数据类型 | 类别 | 说明 | 可变性 |
|---|---|---|---|
int | 数值 | 整数(如 5、-3) | 不可变 |
float | 数值 | 浮点数(如 3.14、-0.5) | 不可变 |
complex | 数值 | 复数(如 3+4j) | 不可变 |
str | 文本 | Unicode 字符序列(如 "hello") | 不可变 |
bool | 布尔 | 布尔值:True 或 False | 不可变 |
list | 序列 | 有序、可变集合(如 [1, "a", True]) | 可变 |
tuple | 序列 | 有序、不可变集合(如 (1, "a", True)) | 不可变 |
range | 序列 | 不可变的数字序列(如 range(5)) | 不可变 |
dict | 映射 | 无序键值对(如 {"name": "Alice"}) | 可变 |
set | 集合 | 无序不重复元素集合(如 {1, 2, 3}) | 可变 |
NoneType | 空值 | 表示无值(None) | 不可变 |
数值类型
# 整数
age = 25
print(age) # Output: 25
# 浮点数
price = 19.99
print(price) # Output: 19.99
# 复数
z = 3 + 4j
print(z.real) # Output: 3.0
print(z.imag) # Output: 4.0布尔类型
is_empty = False
print(5 > 3) # Output: True
print(5 < 3) # Output: False
print(not is_empty) # Output: True文本类型(字符串)
greeting = "Hello, Python!"
print(greeting[0:5]) # Output: Hello
print(len(greeting)) # Output: 13序列类型
列表(可变)
fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits) # Output: ['apple', 'banana', 'cherry', 'orange']元组(不可变)
colors = ("red", "green", "blue")
print(colors[1]) # Output: green
# colors[1] = "yellow" # Error: tuples are immutable范围
numbers = list(range(1, 10, 2))
print(numbers) # Output: [1, 3, 5, 7, 9]
numbers = range(5) # start = 0; step = 1
print(list(numbers)) # Output: [0, 1, 2, 3, 4]映射类型(字典)
person = {
"name": "Alice",
"age": 30,
"city": "Paris"
}
print(person["name"]) # Output: Alice
person["email"] = "alice@example.com" # 添加新键值对集合类型
unique_numbers = {1, 2, 2, 3}
print(unique_numbers) # Output: {1, 2, 3}(重复被移除)
unique_numbers.add(40)
print(unique_numbers) # Output: {1, 2, 3, 40}Warning
集合是无序集合。通过索引访问元素(如
my_set[0])会引发TypeError。
NoneType
result = None
print(result) # Output: None类型检查与转换
a = 2
print(type(a)) # <class 'int'>
a = float(a) # 2.0
a = str(a) # '2'相关概念
- Python 变量 — 变量如何保存这些类型的值
- Python 控制流 — 在循环和条件中使用集合
- Python 入门 — 涵盖这些主题的讲义