首页 > 解决方案 > 第一次使用函数,尝试调试此代码以进行掷骰子模拟,所有可能性都只进入第一个 win 语句

问题描述

使用随机模块并创建函数在掷骰子模拟中掷骰子,每次我运行代码时,它最终只是打印第一个获胜语句。有什么建议么?


import random

print('Craps: A Popular Dice Game')
roll = ''
def rolldie(roll):

    print()
    enter = input('Press <Enter> to roll the dice.')

    if enter == "":
        point = "first"
        die1 = random.randint(1,6)
        die2 = random.randint(1,6)
        roll = die1 + die2
        print(die1, die2)
        print(f'\nYou rolled a {roll} on your {point} roll.')
        point = "second"
        return roll

def main():

    rolldie(roll)

    if roll == 7 or 11:
        print('\nYou win! 1')
    elif roll == 2 or 3 or 12:
        print('\nYou lose! 2')
    else:
        print("\nThat's your point. Roll it again before you roll a 7 and lose!")

        rolldie(roll)

        if roll == 7 or 2 or 3 or 12:
            print('\nYou lose! 3')
        else:
            print('\nYou win! 4')

main()

标签: python-3.x

解决方案


推荐阅读