1. 变量
变量是用于存储数据的标识符或名称,是存储在内存中的值
Python 是一种动态类型语言,不需要在声明变量时指定其类型。变量的类型是在运行时根据赋给它的值自动确定的
即,首次为其赋值时,才会创建变量
1.1 多重赋值
同时给多个变量赋值,变量和值的个数要相同
# 逗号表达式
x, y, z = 1, 'Python', 0
print(x, y, z)
原理:元组解包
1.2 对象引用
变量是对对象的引用而不是对象本身,当创建一个对象并将它赋值给一个变量时,实际上是让这个变量指向该对象
data = [1, 2, 3, 4]
data[0] = 10
可变对象 data 指向的地址没有变,只是值改变了
2. 变量的作用域
2.1 全局变量
全局变量在当前 .py
文件有效
示例:
number = 100
def print_number():
number = 200
print(f'number: {number}')
def print_number2():
print(f'number2: {number}')
print_number()
print_number2()
打印结果:
number: 200
number2: 100
2.2 变量作用域
number = 100
def print_number():
print(f'number: {number}')
number = 200
这种写法会报错:Unresolved reference 'number'
Python 查找变量的顺序:局部命名空间 -> 全局命名空间 -> 内置命名空间
按就近原则
2.3 global 关键字
global 将变量声明为全局变量
语法: global 变量
number = 100
def print_number():
# 将 number 声明为全局变量,后续更改的就是全局变量的值
global number
number = 200
print(f'number: {number}')
def print_number2():
print(f'number2: {number}')
print_number()
print_number2()
打印结果:
number: 200
number2: 200