为了账号安全,请及时绑定邮箱和手机立即绑定

在python中的两个骰子猪游戏中开始我的while循环

在python中的两个骰子猪游戏中开始我的while循环

摇曳的蔷薇 2021-07-09 18:41:14
我目前正在用 Python 3.6 编写骰子游戏的代码我知道我的编码在这方面有点偏差,但是,我真的只是想知道如何开始我的 while 循环。游戏说明如下...人类玩家与计算机对战。他们轮流掷两个骰子,骰子的总数相加,除非掷出 1。如果掷出一个 1,则不会增加分数,轮到下一个人了。如果掷出两个 1,您将失去所有积分,然后轮到下一个人。第一个得分为 100 的玩家赢得游戏。当我运行这段代码时,我一遍又一遍地得到相同的随机生成的数字。我不确定如何在每卷上获得不同的数字。我也不明白如何在每个玩家的回合结束时跟上他们的得分。任何帮助都将不胜感激。import randomdef main():    print("Welcome to the Two Dice Pig Game. You are Player 1!")    Player1 = 0    Player2 = 0    while(Player1<100 or Player2<100):        p1dice=random.randrange(1,7)        p1dice2=random.randrange(1,7)        Player1 = p1dice+p1dice2        print("Player 1 dice 1 =",p1dice)        print("Player 1 dice 2 =",p1dice2)        print("Player 1 dice total =",Player1)        print("Does player 1 want to hold?")        choose1 = input("Enter y for yes or n for no.")        if(choose1=="n"):            print("Player 1 dice 1 =",p1dice)            print("Player 1 dice 2 =",p1dice2)            print("Player 1 dice total =",Player1)            print("Does player 1 want to hold?")            choose1 = input("Enter y for yes or n for no.")        elif(choose1=="y"):            print("It's player 2's turn.")            print("Player 2 dice 2 =",p2dice)            print("Player 2 dice 2 =",p2dice2)            print("Player 2 dice total =",Player2)            print("Does player 2 want to hold?")            choose2 = input("Enter y for yes or n for no.")main()
查看完整描述

2 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

尝试更改线路

Player1 = p1dice+p1dice2

Player1 += p1dice+p1dice2

旧版本Player1每次替换的值。新版本增加了它。

顺便说一下,这+=是一个简写

Player1 = Player1+p1dice+p1dice2

Python 的许多其他运算符都有类似的“增强赋值”符号。


查看完整回答
反对 回复 2021-07-13
?
catspeake

TA贡献1111条经验 获得超0个赞

所以你的问题是随机数不像你想要的那样工作,而不是关于“开始你的循环”?我真的只看到这种情况发生,因为您的系统时钟搞砸了(随机使用当前时间作为随机种子)。您是否尝试过实例化 random.Random() 并从中调用?


查看完整回答
反对 回复 2021-07-13
  • 2 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号