Python - 如何在字体渲染命令中使用变量?

时间:2016-01-26 03:09:45

标签: python fonts pygame display

这里有新的python程序员。我正在为我的代码添加一些内容,以便用户能够跟踪他们的分数,但我不确定我应该为这一部分做些什么。 这是我的代码的一些部分:

number_enemies = 15
objective = (number_enemies, "enemies left")

font = pygame.font.SysFont('Comic_sans', 100, True, False)
enemies_left = font.render(objective, True, RED)

screen.blit(enemies_left, [900, 900])

我想要这样做,就是在屏幕上显示“剩下15个敌人”的文字,这样我就可以把它融入我的游戏中,但我无法让它发挥作用。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

只是做:

objective = str(number_enemies) + " enemies left"

render函数需要一个字符串,但是你通过将变量放在括号中来给它一个元组(不可变列表)。您需要将number_enemies的字符串值添加到其他文本中。

答案 1 :(得分:0)

render期待string - 您必须创建它 - "%d enemies left" % number_enemies

 number_enemies = 15

 # create only once
 font = pygame.font.SysFont('Comic_sans', 100, True, False)

 # mainloop

     # create string
     objective = "%d enemies left" % number_enemies

     # render image with text
     enemies_left = font.render(objective, True, RED)

     # blit image
     screen.blit(enemies_left, [900, 900])