Python-包括参数文本部分内的变量

时间:2017-12-06 18:39:51

标签: python

所以在Pygame中有一个向用户显示消息的功能:

def message_to_user(msg, color, X_displacement, Y_displacement):
    # creating function to display messages to the user
    message=font.render(msg,True,color)
    msgcenter=200+X_displacement,200+Y_displacement
    Game_display.blit(message,msgcenter)

现在有一条消息我需要显示另一个显示的变量:

        message_to_user("You managed to complete",levelcounter,"levels",green,0,40)

这是错误:

TypeError: message_to_user() takes exactly 4 arguments (6 given)

我理解为什么我会收到这个错误,只是无法解决这个问题

4 个答案:

答案 0 :(得分:1)

您需要在将字符串传递给函数

之前构建它
mess = "You managed to complete {} levels".format(levelcounter)
message_to_user(mess, green, 0, 40)

答案 1 :(得分:1)

我认为这...... message_to_user(“你设法完成”,水平计数器,“级别”,绿色,0,40)

应该成为......

message_to_user(“你设法完成了”+ str(levelcounter)+“levels”,绿色,0,40)

答案 2 :(得分:0)

您可以将字符串与变量连接起来,使您的消息成为参数

message_to_user("You managed to complete " + levelcounter + " levels",green,0,40)

这将修复函数调用以使参数与变量匹配

答案 3 :(得分:0)

我只需将&mut作为参数,然后在定义中创建levelcounter

msg