global 声明全局变量
最后更新:2026-09-22
global 声明全局变量
global name 告诉函数体内的 name 引用模块级全局变量。
| 分类 | 关键字与语句 |
|---|---|
| 类型 | 关键字与语句 |
| Python 版本 | all |
📝 语法
global name [, name]*
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
2
🏷️ 相关关键字与语句
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Q不声明 global 也能读全局变量,为什么还需要它?
A读没问题,但要「修改」全局变量就必须声明 global。否则函数内的 x += 1 会把 x 当成局部变量,报 UnboundLocalError 或悄悄创建局部变量。
Qglobal 和 nonlocal 有什么区别?
Aglobal 指向模块级(最外层)的全局变量;nonlocal 在嵌套函数里使用,指向最近的外层函数作用域的变量,而且不能指向全局。
Q在模块顶层写 global 有用吗?
A没用也没必要,模块顶层本身就在全局作用域,那里的名字天然是全局的。global 只对函数体内的声明有意义。