冻结Python脚本

时间:2018-09-24 18:41:16

标签: python-3.x

所以我正在用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__))

2 个答案:

答案 0 :(得分:0)

您正在使用while循环while count > 0:,但是实际上您实际上并没有在任何时候将count减小为0。

这将使您陷入无限循环,外观为“冻结”。  要解决此问题,请使用count - 1

代替count = count - 1

答案 1 :(得分:0)

您的代码未正确减少“计数”

count - 1

应该是

count -= 1