首页 > 解决方案 > 无法让变量正常工作

问题描述

我想要做的是有一个技能水平,如果数字大于技能变量,则让它滚动一个随机数,然后滚动失败。如果它等于或小于 +1 的一半,那么它将是常规成功。如果掷骰等于或小于技能的 25%,那将是一个极大的成功。

import random
min = 1
max = 100
skill = 60
roll = (random.randint(min, max))
print ("Rolling the dices...")
print (roll)
hard_skill = skill/2
extreme_success = skill * .25
regular_success <= skill and => hard_skill +1
if roll > skill:
    print (fail)
elif roll > success_skill < skill:
    print (success_skill)

在第 10 行出现语法错误:

    skill >= regular_success and => hard_skill + 1
                                 ^
SyntaxError: invalid syntax

标签: python

解决方案


Python 不会“记住”您正在谈论的变量;如果你想要两个比较,你需要把它们写出来。

regular_success <= skill and => hard_skill +1

应该是(也=>改为>=

regular_success <= skill and regular_success >= hard_skill +1

Python 确实提供了范围测试的缩写:您可以在中间编写公共变量,如下所示:

hard_skill + 1 <= regular_success <= skill

选择对您来说更清晰的表格。


推荐阅读