当变量变为负数时,我正在尝试引发ValueError。我的问题是,此变量会更改程序中某些部分的值。仅使用一个raise语句,如何能达到以下相同的结果?

import random

a = 5

while True:

    a -= random.randint(0,10)
    if a < 0:
        raise ValueError('Cannot be negative')

    a += random.randint(0,10)
    if a < 0:
        raise ValueError('Cannot be negative')

    a -= random.randint(0,10)
    if a < 0:
        raise ValueError('Cannot be negative')

    a += random.randint(0,10)
    if a < 0:
        raise ValueError('Cannot be negative')

谢谢

最佳答案

我建议为变量使用getter/setter,然后检入setter。这正是它们存在的原因

08-25 07:52
查看更多