繁体   English   中英

为什么我的电报机器人(aiogram)不能正常工作?

[英]Why my telegram bot (aiogram) doesn't work right?

机器人提供从 0 到 10 的数字猜测。但对于正确答案,它回答“假”

我猜问题是使用异步函数,但我不擅长它们

from aiogram import Bot, Dispatcher, executor, types
import random

bot = Bot(token=BOT_TOKEN)
dp = Dispatcher(bot)

# number to guess
NUMBER = 0


# comes up with a number
def setRand():
    NUMBER = random.randrange(10)
    print(NUMBER)


# handler for /start
@dp.message_handler(commands=['start'])
async def start(msg: types.Message):
    setRand()
    await msg.answer("Try to guess the number from 0 to 10")


# handler for getting answer
@dp.message_handler()
async def getNumber(msg: types.Message):
    if msg.text == str(NUMBER):
        await msg.answer('True!')
    else:
        await msg.answer('False :с')
        await msg.answer('But I came up with new number!')

        setRand()


executor.start_polling(dp)```

对全局变量使用 global!

def setRand():
    global NUMBER
    NUMBER = random.randrange(10)
    print(NUMBER)```

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM