在上边的类前设计一个随机属性的函数,要求随机出Strength,Savvy,Alertness,Fixed,Root_bone属性的数值,数值为整数,大于1小于30,并且五者之和应该等于100,并验证函数
时间: 2024-05-04 18:20:21 浏览: 40
随机数生成函数
5星 · 资源好评率100%
好的,我给你写一个实现随机属性的函数,并且验证函数的正确性。代码如下:
```python
import random
class RandomAttributes:
def __init__(self):
self.Strength = 0
self.Savvy = 0
self.Alertness = 0
self.Fixed = 0
self.Root_bone = 0
def generate(self):
while True:
self.Strength = random.randint(2, 29)
self.Savvy = random.randint(2, 29)
self.Alertness = random.randint(2, 29)
self.Fixed = random.randint(2, 29)
self.Root_bone = 100 - self.Strength - self.Savvy - self.Alertness - self.Fixed
if self.Root_bone >= 2 and self.Root_bone <= 29:
break
def verify(self):
total = self.Strength + self.Savvy + self.Alertness + self.Fixed + self.Root_bone
if total == 100:
print("属性值为:")
print("Strength:", self.Strength)
print("Savvy:", self.Savvy)
print("Alertness:", self.Alertness)
print("Fixed:", self.Fixed)
print("Root_bone:", self.Root_bone)
else:
print("属性值之和不等于100,验证失败!")
```
这个类里的 `generate` 函数用于生成随机属性,使用 `while` 循环来保证随机数的生成符合要求,即五个属性的数值之和等于100。而 `verify` 函数则是用来验证随机属性的正确性,如果五个属性的数值之和等于100,则输出五个属性的数值,否则提示验证失败。
我们可以使用这个类来生成随机属性并验证,如下所示:
```python
ra = RandomAttributes()
ra.generate()
ra.verify()
```
输出结果如下:
```
属性值为:
Strength: 24
Savvy: 18
Alertness: 15
Fixed: 16
Root_bone: 27
```
可以看到,随机属性的生成符合要求,而且验证也通过了。
阅读全文