字符串格式化

我们经常需要给玩家显示一些文字,例如向玩家发送一条消息:获得了 10 点经验,你升到了 101 级!

var 经验 := 10
var 等级 := 101
发消息("获得了 " + str(经验) + " 点经验,你升到了 " + str(等级) + "  级!")

其中的发消息函数的参数看起来是在太丑了,这种中文与代码混合的形式简直不是给人看的。Godot 为了咱不被恶心到,提供了一种格式化字符串的语法:

<模版字符串> % <填入值>

我们现在修改上面的发消息方法:

发消息("获得了 %d 点经验,你升到了 %d 级!" % [经验, 等级])

前面字符串中的 %d 我们称之为占位符,此处会被替换成百分号后面的内容,上例中,经验变量的值填入到了第一个 %d 的位置,等级变量的值填入到了第二个 %d 的位置。