[英]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.