On this page

Python 变量

在 Python 中,变量(Variable) 是用来存储数据的标识符,你可以把它想象成一个贴了标签的“盒子”,里面可以放各种类型的数据(如数字、字符串、列表等)。Python 的变量使用非常灵活,不需要提前声明类型,赋值时会自动确定数据类型。


1. 变量的基本用法

(1) 变量赋值

Python 使用 = 进行赋值:

x = 10          # 整数 (int)
name = "Alice"  # 字符串 (str)
pi = 3.14       # 浮点数 (float)
is_student = True  # 布尔值 (bool)
  • 变量名可以包含字母、数字和下划线 _,但不能以数字开头(如 1var 是错误的)。
  • Python 区分大小写,ageAge 是不同的变量。

(2) 修改变量

变量的值可以随时修改,甚至可以改变数据类型:

x = 10      # 初始是整数
x = "hello" # 现在变成字符串
print(x)    # 输出: hello

2. 变量的命名规则

  • 合法变量名
    age = 20
    user_name = "Bob"
    _temp = 3.5
    count2 = 100
    
  • 非法变量名
    2name = "Error"   # ❌ 不能以数字开头
    first-name = "Tom" # ❌ 不能包含连字符(要用下划线 _)
    class = "Python"   # ❌ 不能使用关键字(如 class, if, for 等)
    

Python 关键字(不能用作变量名)

Python 有一些保留关键字,不能用于变量名,如:

False, None, True, and, as, assert, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield

3. 多变量赋值

Python 允许同时给多个变量赋值:

a, b, c = 1, 2, 3  # 同时赋值
print(a, b, c)     # 输出: 1 2 3

x = y = z = 10     # 所有变量赋相同的值
print(x, y, z)     # 输出: 10 10 10

交换变量值

Python 可以轻松交换两个变量的值,而不需要临时变量:

a, b = 5, 10
a, b = b, a  # 交换 a 和 b
print(a, b)  # 输出: 10 5

4. 变量的作用域

变量的作用域决定了它在哪部分代码中可用:

  • 局部变量(Local Variable):在函数内部定义,仅在该函数内有效。
  • 全局变量(Global Variable):在函数外部定义,整个程序都可以访问。

示例

global_var = "I'm global"  # 全局变量

def my_function():
    local_var = "I'm local"  # 局部变量
    print(global_var)  # 可以访问全局变量
    print(local_var)   # 可以访问局部变量

my_function()
print(global_var)  # 可以访问
print(local_var)   # ❌ 报错,local_var 只在函数内部有效

修改全局变量

如果想在函数内部修改全局变量,需要使用 global 关键字:

count = 0

def increment():
    global count  # 声明 count 是全局变量
    count += 1

increment()
print(count)  # 输出: 1

5. 变量的数据类型

Python 是动态类型语言,变量的数据类型由赋值决定:

var = 10       # int
var = 3.14     # float
var = "hello"  # str
var = [1, 2, 3] # list
var = {"name": "Alice"}  # dict

可以用 type() 查看变量类型:

x = 10
print(type(x))  # <class 'int'>

6. 删除变量

使用 del 可以删除变量,释放内存:

x = 100
print(x)  # 输出: 100
del x     # 删除变量 x
print(x)  # ❌ 报错,x 已不存在

总结

特性说明
变量赋值x = 10
变量命名字母/数字/_,不能以数字开头
多变量赋值a, b = 1, 2x = y = 10
交换变量a, b = b, a
作用域局部变量(函数内)、全局变量(global 声明)
数据类型动态类型,type(x) 查看
删除变量del x

Python 的变量使用非常灵活,适合快速开发,但也要注意作用域和命名规范! 🚀