You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用global声明全局变量时报语法错误的正确写法是什么

语法错误原因
  • Python 中 global 属于作用域声明关键字,仅允许在函数、类方法等局部作用域内部使用,直接写在模块全局作用域本身就不符合语法规则
  • global 仅用于声明变量的作用域归属,声明语句不能同时附带赋值操作
正确修改方案

场景1:在模块全局作用域定义全局变量

直接删除 global 关键字即可,模块顶层定义的变量默认就是全局变量:

player_hp = 500
boss_hp = 1000

场景2:在局部作用域(比如函数内部)修改全局变量

先单独用 global 声明要修改的变量名,再单独写赋值语句:

# 先在全局作用域定义变量
player_hp = 0
boss_hp = 0

def reset_global_hp():
    # 局部作用域内声明要修改全局变量
    global player_hp, boss_hp
    player_hp = 500
    boss_hp = 1000

补充说明:如果局部作用域仅需要读取全局变量的值,不需要做修改,不需要加global声明,直接访问即可。

内容的提问来源于stack exchange,提问作者Sad Cat God

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 14:18:02