关于python:如何在骰子游戏中进行变量比较以确定更好的分数?

How do you make a variable comparison to decide a better score in a dice game?

所以我制作了一个创建骰子游戏的python文件。它为两个玩家持有5轮,并在每轮结束时累积得分。当回合结束时,他们的最终分数将被打印出来,并宣布胜利者。如果分数是平局的话,我在尝试加分时遇到了麻烦,这将重复直到一个玩家获胜。我设置了一个变量player1f和player2f。我使用if函数根据得分高的人打印出谁是获胜者。

1
2
3
4
5
6
7
8
9
10
if overallp1==overallp2:
    roll=random.randint(1,6)
    player1F=(roll)


if player1F>player2F:
    print(player1 + ' IS THE WINNER ')

elif player1F<player2F:
    print(player2 + ' IS THE WINNER ')

每次运行程序时,都会出现一个错误,表示未定义player1f变量。player1f是最后一轮比赛的总比分,所以如果平局,只有一分决定胜负。但是它说它没有被定义


如果我理解你的问题,以下是实现你想要的目标的方法:

1
2
3
4
5
6
7
8
9
10
11
12
if overallp1==overallp2:
    player1F = 0
    player2F = 0
    while player1F == player2F:
        player1F=random.randint(1,6)
        player2F=random.randint(1,6)

    if player1F>player2F:
        print(player1 + ' IS THE WINNER ')

    elif player1F<player2F:
        print(player2 + ' IS THE WINNER ')

另外,最终的elif可以只是else,因为此时没有其他可能性。