Python 基础详解:变量(Variables)—— 程序的“记忆单元”
一、什么是变量?
在编程中,变量(Variable) 就像是一个“标签”或“容器”,用来存储数据,以便在程序中重复使用。
你可以把变量想象成一个“带标签的盒子”,盒子里可以放数字、文字、列表等各种数据。
# 示例:定义一个变量
age = 25
age
是变量名(标签)25
是存储的值(内容)=
是赋值运算符,表示“把右边的值存到左边的变量中”
二、变量命名规则
Python 对变量名有明确的规则和约定:
✅ 合法的变量名:
name = "张三"
user_age = 30
_score = 95
pi = 3.14159
❌ 不合法的变量名:
# 2age = 25 # 错误:不能以数字开头
# my-name = "李四" # 错误:不能包含连字符 -
# class = "数学" # 错误:不能使用关键字
变量命名规则总结:
规则 | 说明 |
只能包含 | 字母、数字、下划线 |
不能以数字开头 | 如 |
不能使用 Python 关键字 | 如 |
区分大小写 |
|
建议使用小写 | 遵循 PEP 8 规范 |
💡 推荐命名风格:使用 snake_case
(小写下划线),如 user_name
, total_price
三、Python 的核心数据类型
变量可以存储不同类型的数据。Python 常见的数据类型包括:
1. 整数(int)
表示整数值,正数、负数、零都可以。
age = 25
temperature = -10
count = 0
2. 浮点数(float)
表示带小数点的数字。
price = 19.99
pi = 3.14159
height = 1.75
⚠️ 注意:浮点数计算可能存在精度误差:
print(0.1 + 0.2) # 输出:0.30000000000000004
3. 字符串(str)
表示文本,用单引号 ' '
或双引号 " "
包围。
name = "Alice"
message = 'Hello, World!'
greeting = "你好,Python!"
✅ 单引号和双引号效果相同,选择一种风格并保持一致。
4. 布尔值(bool)
表示真或假,只有两个值:True
和 False
is_student = True
has_job = False
⚠️ 注意:True
和 False
必须首字母大写。
四、查看变量类型
使用 type()
函数可以查看变量的数据类型。
print(type(age)) # <class 'int'>price = 19.99
print(type(price)) # <class 'float'>name = "Bob"
print(type(name)) # <class 'str'>is_active = True
print(type(is_active)) # <class 'bool'>
五、变量的动态类型特性
Python 是动态类型语言,意味着:
- 你不需要提前声明变量的类型
- 同一个变量可以存储不同类型的数据
x = 10 # x 是整数
print(type(x)) # <class 'int'>x = "Hello" # x 现在是字符串
print(type(x)) # <class 'str'>x = 3.14 # x 现在是浮点数
print(type(x)) # <class 'float'>
✅ 这是 Python 的灵活性,但也需注意避免类型混淆。
六、变量赋值的多种方式
1. 单个赋值
name = "张三"
age = 25
2. 多变量赋值(同一值)
a = b = c = 100
# a, b, c 都等于 100
3. 多变量同时赋不同值
name, age, city = "李四", 30, "北京"
⚠️ 注意:变量数量必须与值的数量一致,否则会报错。
七、变量的重新赋值与更新
变量的值可以随时被修改。
score = 85
print(score) # 85# 重新赋值
score = 90
print(score) # 90# 基于原值更新
score = score + 5 # 或 score += 5
print(score) # 95
八、变量的作用域(简单介绍)
变量有“作用范围”,分为:
- 局部变量:在函数内部定义,只能在函数内使用
- 全局变量:在函数外部定义,整个程序都可以使用
global_var = "我是全局变量"def my_function():local_var = "我是局部变量"print(global_var) # 可以访问全局变量print(local_var) # 只能在函数内访问my_function()
# print(local_var) # 错误!无法在函数外访问局部变量
九、最佳实践与建议
建议 | 说明 |
使用有意义的变量名 | 如 |
遵循 | 提高代码可读性 |
避免使用单个字母 | 除非在循环中(如 |
不要使用关键字作为变量名 | 如 |
给变量添加注释 | 特别是复杂逻辑时 |
# ❌ 不推荐
a = 25
b = 30
c = a + b# ✅ 推荐
user_age = 25
friend_age = 30
total_age = user_age + friend_age # 两人年龄总和
十、常见错误与陷阱
1. 使用未定义的变量
# print(username) # NameError: name 'username' is not defined
解决:先定义再使用。
2. 拼写错误
user_name = "Alice"
# print(usernmae) # NameError: name 'usernmae' is not defined
解决:使用代码编辑器的自动补全功能。
3. 类型混淆
age = "25" # 字符串
# result = age + 5 # TypeError: can only concatenate str (not "int") to str
解决:使用 int()
转换:
result = int(age) + 5 # 30
十一、总结
变量是 Python 编程的基石,掌握变量的使用是学习编程的第一步。
本文核心要点回顾:
概念 | 说明 |
变量 | 存储数据的“容器” |
命名规则 | 字母、数字、下划线,不能数字开头,不能用关键字 |
命名风格 | 推荐 |
数据类型 |
|
动态类型 | 变量可以存储不同类型的数据 |
赋值方式 | 单赋值、多赋值、同时赋值 |
最佳实践 | 使用有意义的名称,避免拼写错误 |
📌 动手练习建议:
- 打开 Python 交互环境或 VS Code
- 定义几个变量:你的名字、年龄、是否学生
- 使用
print()
和type()
查看它们 - 尝试更新变量的值
# 试试看!
your_name = "你的名字"
your_age = 20
is_student = Trueprint(f"我叫{your_name},今年{your_age}岁,是学生吗?{is_student}")
print(type(your_name))