Python 使用';时出现意外语法错误<';和'&燃气轮机';

Python 使用';时出现意外语法错误<';和'&燃气轮机';,python,Python,我被安排了一个简单的任务: 为一个游戏编写一个程序,其中计算机生成 20到30之间的随机起始数。 播放器和计算机可以从数字中删除1、2或3 轮流。像这样的。。。 起始号码:25 要删除多少个?3. 左22 计算机删除2 左20 必须删除最后一个值才能获得数字的玩家 降到0是输家。 左一 计算机删除1 你赢了 我正在尝试创建它,以便玩家只能输入数字1、2或3来删除 我得到了无效语法的语法错误,其中if语句是: import random import time start=random.rand

我被安排了一个简单的任务:

为一个游戏编写一个程序,其中计算机生成 20到30之间的随机起始数。 播放器和计算机可以从数字中删除1、2或3 轮流。像这样的。。。 起始号码:25 要删除多少个?3. 左22 计算机删除2 左20 必须删除最后一个值才能获得数字的玩家 降到0是输家。 左一 计算机删除1 你赢了

我正在尝试创建它,以便玩家只能输入数字1、2或3来删除

我得到了无效语法的语法错误,其中if语句是:

import random
import time

start=random.randint(20,30)

print('Starting number is',start)

personremove=int(input('How many do you want to remove? '))

if personremove=<3 or >1:
    print('Enter a number between 1 and 3')
    personremove=int(input('How many do you want to remove? '))


current=start-personremove

print(current,'left')

compremove=random.randint(1,3)

current=start-personremove-compremove

print('Computer removes',compremove)

print(current,'left')
随机导入
导入时间
开始=随机。随机数(20,30)
打印('起始编号为',起始)
personremove=int(输入('要删除多少?'))
如果personremove=1:
打印('输入一个介于1和3'之间的数字)
personremove=int(输入('要删除多少?'))
当前=启动人员删除
打印(当前,“左”)
compremove=random.randint(1,3)
当前=启动人员删除压缩
打印(“计算机删除”,压缩)
打印(当前,“左”)
任何帮助都将不胜感激,正如您可能知道的,我只是python的初学者。

如果personremove=1:
应该是

if personremove <= 3 or personremove > 1:
如果人员删除1:
personremove=1
不是合法表达。使用:

if not (1 <= personremove <= 3):

您需要重新排列这些语句:

if 1 < personremove <= 3:

if 1if
语句只需要稍微调整一下。尝试:

if 1 <= personremove <= 3:
    ...

如果1有几个错误:

  • 你的指示前后不一致。介于1和3之间的唯一整数是2。但你肯定不是这个意思。您的意思是输入1、2或3
  • 您具有大于向后的语法。它应该是
    personremove>3
    读取personremove大于3
  • 您不能只在
    之后添加
    >1
    ,必须再次说明与
    1
    相关的变量。这将起作用
    personremove<1

    如果personremove<1或personremove>3:


  • 一般来说,还有更好的编码方法。例如,将此部分放入循环。

    您认为这应该做什么
    如果personremove=1:
    这不是有效的Python。逻辑不正确。只有当数字超出1-3的范围时,该语句才应该为真。我在这里使用@MartijnPieters。。。我很肯定这个测试对任何数字都是正确的。虽然,对于OP的原始语句,试图解析出它最初的意思有点含糊不清。对于
    personremove
    等于2或3的情况,这将是正确的,我认为这不是OP想要的。当值超出值1、2或3时,他希望它是真的。@MartijnPieters——我真的不知道。我想如果我不能解析它,就很容易解释为什么python的解释器也不能解析它:)
    Martijn.personmove(where=BED)
    if 1 < personremove <= 3:
    
    if 1 <= personremove <= 3:
        ...