所以我正在用Python开发类似roguelike的游戏,所以我正在查看是否可以做一些事情来制作带有骰子表示法的函数(如果您不知道骰子表示法是什么,那么1d4意味着掷骰1双面骰子,1d20表示掷出二十个骰子,2d8掷2表示掷出8个骰子,依此类推。
我们的想法是我们运行一个rolldice("2d4")
之类的函数,并让其返回两个四面模压辊的累积结果。所以我写了一个测试脚本,看看我的想法是否可行。它应该做的就是用骰子符号,掷出那些骰子,吐出每个掷骰子的总数和结果。
但是,不幸的是,在输入骰子符号后,脚本似乎冻结了。
from random import randint
print("PLEASE INPUT DICE NOTATION")
input_ = input()
output_ = 0
rolls = []
count = int(input_[0])
size = int(input_[2])
while count > 0:
output__ = randint(1, size)
output_ += output__
rolls.append(output__)
count - 1
print(int(output_))
print(int(output__))
答案 0 :(得分:0)
您正在使用while循环while count > 0:
,但是实际上您实际上并没有在任何时候将count
减小为0。
这将使您陷入无限循环,外观为“冻结”。
要解决此问题,请使用count - 1
count = count - 1
答案 1 :(得分:0)
您的代码未正确减少“计数”
count - 1
应该是
count -= 1