变量与数据类型插画

程序的本质,是对数据的处理:先把数据存起来,再对它们做计算、判断、输出。这一课学习存数据的两样基本功——常量与变量,以及数据都有哪些类型。

一、常量:固定不变的值

常量就是在程序运行过程中不会改变的值。比如:

3.14        # 圆周率,写死在程序里
"中国"      # 国名,不会变
100         # 一百分,固定不变
💡 Python 里没有真正的"常量"关键字(不像有些语言有 const)。大家约定俗成:全大写的名字就当作常量,提醒自己不要去改它。比如:
PI = 3.14159
SCHOOL_NAME = "希望中学"

二、变量:会变的"小盒子"

变量是贴了标签的小盒子

如果说常量是刻在石头上的字,那么变量就是一个贴了标签的小盒子:盒子上有名字(变量名),里面装着值(数据),而且盒子里的东西可以换。

给变量"装东西"叫赋值,用 = 表示。注意:这里的 = 不是数学上的"等于",而是"把右边的值装进左边的盒子":

name = "小明"      # 把"小明"装进名叫 name 的盒子
score = 90          # 把 90 装进名叫 score 的盒子
score = 95          # 盒子里的东西可以换:90 换成了 95

print(name)         # 打开盒子看看:输出 小明
print(score)        # 输出 95
💡 变量最大的用处就是"记住"数据。没有变量,程序算完就忘,多一步的计算都做不了。

三、变量的命名规则

变量命名规则示意

给盒子贴标签不能乱贴,Python 有几条硬性规定:

规则正确 ✅错误 ❌
只能由字母、数字、下划线组成age2、_namemy-name(有横线)
不能以数字开头score11score
区分大小写Name 和 name 是两个盒子—
不能用关键字my_ifif、for、while 等 35 个关键字

除了硬性规定,还有两条好习惯:

  • 见名知意:用英文单词,student_name 比 s 好一万倍;
  • 小写+下划线:多个单词用下划线连接,如 total_score(这叫"蛇形命名法",Python 社区最推荐)。
💡 Python 其实允许用中文做变量名(姓名 = "小明" 能运行),但实际开发中没人这么干——代码要给全世界的人看,坚持用英文。

四、数据类型:盒子里能装什么

四种基本数据类型

盒子里装的东西分"种类",Python 最常用的四种基本数据类型:

类型名字例子说明
整型int10、-5、0不带小数点的整数
浮点型float3.14、-0.5带小数点的数(float 是"浮动的小数点"的意思)
字符串str"你好"、'Python'被引号引起来的都是字符串,文字、符号都行
布尔型boolTrue、False只有两个值:真 / 假,注意首字母大写

想知道盒子里装的是哪种类型?用 type() 函数"验一验":

a = 10
b = 3.14
c = "你好"
d = True

print(type(a))   # <class 'int'>
print(type(b))   # <class 'float'>
print(type(c))   # <class 'str'>
print(type(d))   # <class 'bool'>
💡 关于引号:单引号 'Python' 和双引号 "Python" 效果一样,但必须成对出现。如果字符串本身很长、要换行,就用三引号 """..."""。

五、类型转换:盒子之间"倒东西"

有时候需要把一种类型变成另一种类型,用四个"转换器"函数:int()、float()、str()、bool()。

int("123")      # "123" → 123(字符串变整数)
int(3.99)       # 3.99 → 3(注意:直接舍去小数,不是四舍五入!)
float("3.14")   # "3.14" → 3.14
str(100)        # 100 → "100"(整数变字符串)
bool(0)         # 0 → False
bool("你好")    # 非空字符串 → True
⚠️ 转换不是万能的:int("abc") 会报错,因为 "abc" 根本不是数。记住一条:只有"长得像数"的字符串才能转成数。

六、动手练一练

学到这里,试着完成下面两道小练习(可以用本站"在线python"工具运行):

练习 1:定义三个变量,分别存你的姓名(字符串)、年龄(整数)、身高(浮点数,如 1.75),然后用 print() 输出。

练习 2:用 type() 查看这三个变量的类型,确认它们分别是 str、int、float。

点击查看参考答案
name = "小明"
age = 16
height = 1.75

print(name, age, height)
print(type(name))    # <class 'str'>
print(type(age))     # <class 'int'>
print(type(height))  # <class 'float'>
🎉 这一课你学会了:常量与变量的概念、变量命名规则、四种基本数据类型、type() 和类型转换。下一课,我们让程序和人互动起来——学习数据的输入与输出!
More

相关教程