Python 数据类型
Python 的核心数据类型:数字、字符串、布尔、列表、元组、字典与集合。
你将学到
- 核心数字类型:int 和 float
- 字符串及其最常用的操作
- 布尔值与真值/假值
- 容器:list、tuple、dict 和 set
- 可变 vs 不可变类型及其重要性
概念讲解
数字类型
Python 有两种主要数字类型:
int——任意精度整数(不会溢出!)float——浮点数(IEEE 754 双精度)
count = 42 # int
price = 19.99 # float
big = 10 ** 100 # int——Python 原生处理任意大整数
字符串
字符串是文本,用单引号、双引号或三引号包围:
name = "Ada"
greeting = 'Hello'
multi = """这是
多行字符串"""
# F-string(Python 3.6+)——最佳格式化方式
message = f"Hello, {name}!"
字符串有有用的方法:.upper()、.lower()、.strip()、.split()、.replace()、.startswith()。
布尔值
is_active = True
is_deleted = False
假值:False、0、0.0、""、[]、{}、None。其余都是真值。
容器
list——有序、可变
fruits = ["apple", "banana", "cherry"]
fruits.append("date")
fruits[0] = "apricot" # 可变
tuple——有序、不可变
point = (10, 20)
# point[0] = 5 # TypeError——元组不能改
dict——键值对
user = {"name": "Ada", "age": 25}
user["email"] = "[email protected]" # 添加键
print(user["name"])
set——无序、元素唯一
tags = {"python", "code", "learn"}
tags.add("fun")
tags.add("python") # 无效——已存在
可变 vs 不可变
这是关键区别:
- 不可变——
int、float、str、tuple、bool。一旦创建,值不可变。"改变"字符串会创建新字符串。 - 可变——
list、dict、set。可以就地修改。
# 字符串不可变
s = "hello"
s += " world" # 创建新字符串,s 现在指向它
# 列表可变
nums = [1, 2, 3]
nums.append(4) # 修改同一个列表
检查类型
type(x) # 返回类型
isinstance(x, int) # x 是 int(或子类)时为 True
用 isinstance() 做类型检查——它处理继承,而 type() 不会。
示例代码
# 数字
count = 42
price = 19.99
big = 10 ** 50 # Python 原生处理大整数
print(f"Count: {count}, Price: {price}, Big: {big}")
# 字符串和 f-string
name = "Ada"
print(f"Hello, {name}!")
print(name.upper()) # ADA
print(name.replace("A", "E")) # Eda
# 列表——有序且可变
fruits = ["apple", "banana", "cherry"]
fruits.append("date")
print(fruits)
print(fruits[0]) # apple
print(fruits[-1]) # date(负索引)
# 字典——键值对
user = {"name": "Ada", "age": 25, "role": "admin"}
print(user["name"])
for key, value in user.items():
print(f" {key}: {value}")
# 元组——不可变
point = (10, 20)
x, y = point # 解包
print(f"Point: ({x}, {y})")
# 集合——元素唯一
tags = {"python", "code", "python"} # 去重
print(tags) # {'python', 'code'}
# 类型检查
print(type(count)) # <class 'int'>
print(isinstance(name, str)) # True
演示了数字、f-string、列表操作、字典遍历、元组解包、集合去重和类型检查。这些是你每天都会用的类型。
动手试一试
- JSON Formatter
Python 字典和列表直接映射到 JSON——格式化并检查它们。
- CSV to JSON
把 CSV 转成 Python 风格的字典——常见的数据任务。
常见错误
错误写法
用列表做函数的默认参数
正确做法
默认参数在定义时求值一次,不是每次调用。def f(x=[]): x.append(1) 会跨调用累积。改用 def f(x=None): x = x or []。
错误写法
期望元组像列表一样可变
正确做法
元组不可变——不能 append、remove 或重新赋值元素。需要修改序列就用列表。元组用于固定集合,如坐标。
相关资源
相关代码片段
- Sort Dictionary by Value
操作字典的实用示例。
相关速查表
- Python Cheatsheet
所有数据类型及其方法和操作。
练习 Python 数据类型
1 个练习
查阅不认识的术语
新手友好的术语表用大白话解释编程术语——变量、函数、DOM、Promise 等等。
动手做项目
通过引导式项目应用所学,含起始代码与解决方案。
解读错误信息
用大白话解释常见错误——什么意思、为什么发生、如何修复。