数据类型与变量
本节定位
这一节让你理解 Python 如何表示和保存数据。变量、数字、字符串、布尔值和类型转换是后面写条件判断、处理表格数据、调用模型 API 的基础,先把这些“最小数据单位”用熟。
学习目标
- 理解什么是变量,掌握变量的命名规则
- 掌握 Python 的基本数据类型:整数、浮点数、字符串、布尔值
- 学会数据类型之间的转换
- 理解动态类型的含义
什么是变量?
想象变量是一个贴了标签的盒子。你可以把东西放进去,用标签来找到它。
name = "小明" # 盒子上贴了"name"标签,里面放了"小明"
age = 20 # 盒子上贴了"age"标签,里面放了 20
height = 1.75 # 盒子上贴了"height"标签,里面放了 1.75
= 在 Python 里不是"等于",而是赋值——把右边的值放进左边的盒子里。
# 赋值的方向:从右到左
x = 10 # 把 10 放进 x 这个盒子
# 可以修改盒子里的内容
x = 20 # 现在 x 里面是 20 了(10 被丢掉了)
# 可以用变量的值来计算
y = x + 5 # y = 20 + 5 = 25
print(y) # 输出: 25
变量命名规则
Python 对变量名有一些规定:
| 规则 | 正确示例 | 错误示例 |
|---|---|---|
| 只能包含字母、数字、下划线 | user_name, age2 | user-name, age! |
| 不能以数字开头 | name1 | 1name |
| 不能用 Python 关键字 | my_class | class, if, for |
| 大小写敏感 | Name 和 name 是不同变量 | — |
命名惯例(不是强制的,但大家都这么做)
# 好的命名 ✅ —— 用小写字母加下划线(snake_case)
student_name = "小明"
learning_rate = 0.001
max_epochs = 100
# 不好的命名 ❌ —— 不是不能用,而是不够清晰
a = "小明" # 看不出来 a 是什么
x1 = 0.001 # x1 代表什么?
SN = "小明" # 缩写太短,别人看不懂
命名的黄金法则
变量名应该让人一眼就知道它是什么。宁可名字长一点(student_count),也不要用看不懂的缩写(sc)。
数字类型
整数(int)
整数就是没有小数点的数字,可以是正数、负数或零。
age = 25
temperature = -10
count = 0
big_number = 1_000_000 # 下划线分隔,方便阅读,等同于 1000000
print(type(age)) # <class 'int'>
type() 函数
type() 可以查看任何值的类型,学习阶段经常会用到,帮你确认变量的类型。
Python 的整数没有大小限制(不像 C/Java 有 int 范围限制):
huge = 99999999999999999999999999999999
print(huge + 1) # 完全没问题
浮点数(float)
浮点数就是带小数点的数字。
pi = 3.14159
weight = 65.5
negative = -0.001
print(type(pi)) # <class 'float'>
注意浮点数的精度问题——这是所有编程语言都有的问题:
>>> 0.1 + 0.2
0.30000000000000004 # 不是精确的 0.3!
这不是 Python 的 bug,而是计算机用二进制存储小数时的固有问题。在 AI 开发中,这个微小的误差通常不影响结果。但如果你做金融计算需要精确结果,可以用 decimal 模块。
整数和浮点数的运算
a = 10
b = 3
print(a + b) # 13 加法
print(a - b) # 7 减法
print(a * b) # 30 乘法
print(a / b) # 3.333... 除法(结果总是 float)
print(a // b) # 3 整除(向下取整)
print(a % b) # 1 取余数
print(a ** b) # 1000 幂运算(10 的 3 次方)
一个常见的坑:
# 除法 / 的结果永远是 float,即使能整除
>>> 10 / 2
5.0 # 不是 5,而是 5.0
# 如果想得到整数结果,用 //
>>> 10 // 2
5
字符串(str)
字符串就是文本——一串字符。用引号包裹。