HOME / 第 2 部分 · 核心概念与 GDScript 语法 / 第 12 课
MODULE 2 · 核心概念与 GDScript 语法

第 12 课 · 运算符与表达式

⏱ 预计时长 25 分钟📊 难度 入门📚 模块 第 2 部分 · 核心概念与 GDScript 语法

🎯 本课学习目标

运算符是「让数据发生关系」的符号。本课把 GDScript 的运算符一次讲全。

📖 详细教学步骤

算术运算符语法

运算符含义示例结果
+5 + 38
-5 - 32
*5 * 315
/7 / 23.5
%取余7 % 21
**2 ** 38

比较运算符(结果是 bool)语法

运算符含义示例
==等于5 == 5 → true
!=不等于5 != 3 → true
>大于5 > 3 → true
<小于5 < 3 → false
>=大于等于5 >= 5 → true
<=小于等于4 <= 5 → true

💡 注意:判断相等要用 ==(两个等号),= 是赋值。

逻辑运算符语法

运算符含义说明
and两边都 true 才 true
or有一边 true 就 true
not取反
GDSCRIPTvar hp = 50
var has_shield = true

# 与:hp>0 且 有护盾
print(hp > 0 and has_shield)   # true
# 或:hp>100 或 有护盾
print(hp > 100 or has_shield)  # true
# 非
print(not has_shield)          # false

赋值与简写语法

给变量赋值常用简写,省时省事:

GDSCRIPTvar score = 10
score += 5      # 等价 score = score + 5 → 15
score -= 2      # score = score - 2  → 13
score *= 2      # score = score * 2  → 26
score /= 2      # score = score / 2  → 13
score += 1      # 计数器常用

# 字符串拼接
var first = "Godot"
var last = "Game"
var full = first + " " + last   # "Godot Game"
print(full)

字符串与数字互转语法

游戏里经常要把数字变成文字(显示分数):

GDSCRIPTvar score = 100
var text = "得分: " + str(score)   # str() 转字符串
print(text)

var s = "42"
var n = int(s)     # 转整数 → 42
var f = float(s)   # 转小数 → 42.0
print(n + 1)       # 43
⚠️
用 = 判断相等导致逻辑错误?

这是新手最常见 bug:if score = 100 是赋值(永远为真),必须写 if score == 100

⚠️
字符串与数字相加报错?

字符串 + 数字会报错,必须先用 str(数字) 转成字符串,例如 "分数" + str(10)。

🧪 动手试一试

🏋️ 课后练习

写一段代码:把变量 hp 从 0 加到 100(每次 +10),并用字符串拼接 print 出每一轮的结果,同时判断 hp==50 时输出'半血了'。

用 += 和 == 判断。参考:hp += 10; print("HP=" + str(hp)); if hp == 50: print("半血了")

💡

取余 % 常用于:判断奇偶、让数字循环(如 0-9 循环)、动画帧切换。

💡

调试时把每一步 print 出来,能快速验证运算符结果。

🎓 本课小结

算术/比较/逻辑/赋值四大类运算符构成表达式;== 才是判断相等;字符串拼接用 + 与 str()。