@dp.message()
async def echo(message: Message):
asyncio.gather()
.@app.get("/delay")
async def delay():
time.sleep(10)
return {"result": "OK!"}
@app.get("/instantly")
async def instantly():
return {"result": "OK!"}
time.sleep()
блокирует цикл событий. Ответ от второго запроса придет только после отработки первого. Обратите внимание, что delay объявлена через async def.await asyncio.sleep()
@app.get("/delay")
async def delay():
await asyncio.sleep(10)
return {"result": "OK!"}
@app.get("/delay")
def delay():
time.sleep(10)
return {"result": "OK!"}
bot.get_chat_members_count(message.chat.id)
выдаст всегда значение 2.dp.feed_update()
if message.text == 'Подтвердить':
всегда вернется одно и то же значение.cells_products_data
.message.text
, а с message.html_text
, или message.md_text
"/start MTIzNDU2Nzg5"
"/start "
, декодируете оставшееся из Base64, получите id пользователя кому отправлять сообщение.await bot.restrict_chat_member(chat_id=message.chat.id,
user_id=message.reply_to_message.from_user.id,
until_date=ban_time,
permissions=ChatPermissions(can_send_messages=False)
)
@router.callback_query(F.data == 'shirt_shorts')
async def ss(callback: CallbackQuery, state: FSMContext):
await state.set_data({"choosed_category": shirt_shorts}) # прокидываем в state нужные данные
# либо await state.update_data(choosed_category=shirt_shorts)
await callback.answer()
await callback.message.answer('Ты выбрал(а) категорию Футболка / Шорты \n' + txt.calculation)
await state.set_state(CalculateCost.choosing_cost)
....
@router.message(CalculateCost.choosing_cost)
async def calculate(message: Message, state: FSMContext):
state_data = await state.get_data()
choosed_category = state_data["choosed_category]
....
from collections import UserDict
class MyDict(UserDict):
def __init__(self, **kwargs):
self._initialization_finished = False
print('Создан объект')
super().__init__(**kwargs)
self._initialization_finished = True
def __setitem__(self, item, value):
if self._initialization_finished:
print(f"Вы поменяли значение {item} на {value}!")
if isinstance(value, dict):
value = MyDict(**value)
super().__setitem__(item, value)
def __getitem__(self, item):
print(f"Пытаемся получить значение {item}")
return super().__getitem__(item)
d = MyDict(x='123', y=15, z={'a': 4})
# Создан объект
# Создан объект
d['x'] = '456'
# Вы поменяли значение x на 456!
e = d['y']
# Пытаемся получить значение y