Python数据类型

好的,这是一个更加详尽的数据类型表格,补充了遍历、访问和类型转换的方法。


Python 内置数据类型详解表(增强版)

类型 (Type) 分类 特点 (Characteristics) 定义 (Definition) 访问 (Access) 遍历 (Iteration) 类型转换 (Conversion) 使用示例 (Usage Examples)
int 数字类型 整数,可以是正数、负数或零。支持任意大的整数。 variable = 整数值 - (数字本身) - (不是序列) int(x) x = 42``y = -17``z = int("123") # 从字符串转
float 数字类型 浮点数,即带有小数点的数字。存在精度限制。 variable = 浮点数值 - (数字本身) - (不是序列) float(x) a = 3.14``b = float(5) # 从整数转``c = float("3.14")
complex 数字类型 复数,由实部和虚部组成。 variable = 实部 + 虚部j .real, .imag 属性 - (不是序列) complex(real, imag) z = 3 + 4j``print(z.real) # 3.0``print(z.imag) # 4.0
bool 数字类型 布尔值,只有 TrueFalse variable = True / False - (布尔值本身) - (不是序列) bool(x) is_valid = True``is_empty = bool([]) # False
str 序列类型 字符串,不可变的字符序列。 variable = "双引号"``variable = '单引号' s[index] (索引)s[start:end:step] (切片) for char in s: str(x) name = "Alice"``first_char = name[0] # 'A'``substring = name[1:3] # 'li'``for c in name: print(c)``num_str = str(123)
bytes 序列类型 字节序列,不可变 variable = b'字面值'``variable = bytes(...) b[index] (索引)b[start:end:step] (切片) for byte in b: bytes(x), x.encode() data = b"hello"``first_byte = data[0] # 104 (ASCII码)``for b in data: print(b)``encoded = "str".encode()
list 序列类型 可变的有序列表。 variable = [元素1, 元素2, ...] l[index] (索引)l[start:end:step] (切片) for item in l: list(x) numbers = [1, 2, 3, 4]``first = numbers[0]``slice = numbers[1:3]``for n in numbers: print(n)``from_tuple = list((1,2)) # [1, 2]
tuple 序列类型 不可变的有序列表。 variable = (元素1, 元素2, ...) t[index] (索引)t[start:end:step] (切片) for item in t: tuple(x) coordinates = (10, 20)``x = coordinates[0]``for coord in coordinates: print(coord)``from_list = tuple([1,2]) # (1, 2)
dict 映射类型 存储键值对,可变 variable = {key1: value1, ...} d[key]``d.get(key) for key in d:``for key, value in d.items(): dict(...) student = {"name": "Bob", "age": 25}``name = student["name"]``age = student.get("age")``for k in student: print(k)``for k, v in student.items(): print(k, v)``from_pairs = dict([('a', 1), ('b', 2)])
set 集合类型 可变的无序不重复元素集。 variable = {元素1, 元素2, ...}``variable = set(...) - (不支持索引) for item in s: set(x) unique_nums = {1, 2, 3}``for num in unique_nums: print(num)``from_list = set([1,2,2,3]) # {1, 2, 3}
frozenset 集合类型 不可变的无序不重复元素集。 variable = frozenset(...) - (不支持索引) for item in fs: frozenset(x) fs = frozenset([1, 2, 3])``for num in fs: print(num)``from_set = frozenset({1, 2, 3})

附录:常见类型转换规则

转换目标 可转换来源 备注
int(x) str, float, bool str 必须是合法的数字格式
float(x) str, int, bool str 必须是合法的数字格式
str(x) 几乎所有类型 会返回对象的字符串表示形式
bool(x) 几乎所有类型 0, 0.0, "", [], {}, set() 等会被转换为 False
list(x) str, tuple, set, dict (键), range dict 会转换为键的列表
tuple(x) str, list, set, dict (键), range dict 会转换为键的元组
set(x) str, list, tuple, dict (键), range dict 会转换为键的集合
dict(x) [(k, v), ...] (键值对元组列表) 传入键值对序列

附录:序列通用操作

str, list, tuple 都是序列,支持以下通用操作:

  • 成员检查: x in s, x not in s
  • 连接: s1 + s2
  • 重复: s * n
  • 长度: len(s)
  • 最小值/最大值: min(s), max(s) (元素可比较时)
posted @ 2026-04-09 10:28  深海里游弋的鱼  阅读(3)  评论(0)    收藏  举报