2026-09-23
Python 入门系列(二):变量与数据类型——程序的记忆
变量是贴了标签的盒子。学习变量赋值、int/float/str/bool 四种类型、type() 查看、input() 输入与类型转换,完成 BMI 计算器练习。
变量与数据类型:程序的记忆
预计学习时间:50 分钟 · 本系列第 2 / 10 课
一、程序也需要"记事"
上一课的 print 只是"说一遍就忘"。但真正的程序要记住东西:记住你的名字、分数、点了几次赞。靠什么记?——变量(Variable)。
**核心比喻:变量是贴了标签的盒子。**你造一个盒子,贴上标签(变量名),往里面放东西(值)。以后喊标签名,就能拿到盒子里的东西。
age = 18 ┌─────────┐
│ 标签:age │
│ 18 │
└─────────┘
name = "老魏" ┌──────────┐
│标签:name │
│ "老魏" │
└──────────┘
二、变量赋值基础
= 在 Python 里不是"相等",而是**"把右边的值装进左边的盒子"**,读作"赋值":
age = 18 # 整数装进 age
name = "老魏" # 文字装进 name
print(name, "今年", age, "岁")
老魏 今年 18 岁
变量可以随时被重新赋值,新值会覆盖旧值:
score = 60
score = 95 # 60 被覆盖
print(score) # 输出 95
三、四种最常用的数据类型
| 类型 | 英文名 | 例子 | 用途 |
|---|---|---|---|
| 整数 | int | 18、-3、0 |
年龄、数量、次数 |
| 浮点数 | float | 3.14、-0.5 |
身高、体重、价格 |
| 字符串 | str | "老魏"、'abc' |
名字、地址、任何文字 |
| 布尔值 | bool | True、False |
是/否、开/关、真/假 |
用 type() 可以查看一个值的类型:
print(type(18)) # <class 'int'>
print(type(1.75)) # <class 'float'>
print(type("老魏")) # <class 'str'>
print(type(True)) # <class 'bool'>
注意:18 是数字,"18" 是字符串——带引号就是文字!"18" + 1 会直接报错。
四、让程序"问你答":input() 与类型转换
input() 会暂停程序等用户输入,但它的返回值永远是字符串:
birth = input("请输入你的出生年份:")
age = 2026 - int(birth) # input 得到的是字符串,必须转成数字才能做减法
print("你今年", age, "岁")
请输入你的出生年份:2000
你今年 26 岁
常用类型转换函数:
int("123")→ 字符串转整数float("1.75")→ 转浮点数str(123)→ 数字转字符串- 转换失败会报
ValueError(如int("abc"))
五、变量命名规则
- ✅ 可以:字母、数字、下划线组成;不能以数字开头;区分大小写
- ✅ 推荐:见名知意——
student_name好过a1;多个单词用下划线连接(蛇形命名) - ❌ 不可以:
2name(数字开头)、my-name(带横线)、print(与内置函数重名)
六、避坑指南
- ❌
int("3.5")—— 字符串里带小数点,要先float("3.5")再转 int - ❌ 变量没赋值就使用:
print(score)会报NameError。盒子必须先造、先装,才能取 - ❌
age = input("年龄")后直接做数学运算 —— 记住 input 返回字符串,先int()转换!
七、动手练习
练习:BMI 计算器。请用户输入身高(米)和体重(公斤),计算并打印 BMI 值(公式:体重 ÷ 身高²)。
height = float(input("请输入身高(米):"))
weight = float(input("请输入体重(公斤):"))
bmi = weight / (height * height)
print("你的 BMI 是:", bmi)
进阶:用 round(bmi, 1) 可以保留 1 位小数。
下一课预告:让记下的数据"动起来"——运算符。