Python浮点数错误

Python Float Operand Error

抱歉,如果这是一个新手问题,我想知道为什么每当我 运行 我的程序应该尝试通过选择数字的数量来猜测我的号码时,我会收到错误 "TypeError: unsupported operand type(s) for &: 'float' and 'float'"我告诉它(精度变量)并平均 3 个数字半径中的数字以获得接近我的数字。欢迎提出更有效的代码编写方法我刚开始学习 Python...

__author__ = 'Vansh'
import random


def avg(*args, length):
    nums = 0
    for num in args:
        nums += num
    return nums/length

def standby():
    i = input(">>> ")
    if i != "close":
        standby()

def ai():
    x = float(input("Enter A Number: "))
    y = int(input("Enter Precision: "))
    z = []
    for i in range(y*5):
        random_guess = random.randrange(-1, 101)
        decimal = random.randrange(-1, 10)
        random_guess = float(random_guess + (decimal/10))
        while random_guess > x-3 & random_guess < x+3:
            print()
        z.append(random_guess)
    print("Number Guess: {}".format(avg(z, len(z))))
    standby()

ai()

& 是 python 中的 bitwise and 运算符,我相信你想改用 and 运算符。

应该是-

while random_guess > x-3 and random_guess < x+3:

if也可以写成-

while (x-3) < random_guess < (x+3):