42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
import asyncio
|
||
|
||
|
||
# База данных
|
||
database = [
|
||
{"название": "Разработать API", "статус": "Завершена"},
|
||
{"название": "Написать документацию", "статус": "Ожидает"},
|
||
{"название": "Провести код-ревью", "статус": "Ожидает"},
|
||
]
|
||
|
||
|
||
# Не менять
|
||
class AsyncListManager:
|
||
async def __aenter__(self):
|
||
await self.connect()
|
||
return self
|
||
|
||
async def __aexit__(self, exc_type, exc_val, exc_tb):
|
||
await self.disconnect()
|
||
|
||
async def connect(self):
|
||
print("Начало работы с базой данных")
|
||
await asyncio.sleep(0.5)
|
||
|
||
async def disconnect(self):
|
||
print("Завершение работы с базой данных")
|
||
await asyncio.sleep(0.5)
|
||
|
||
async def stage_append(self, value):
|
||
await asyncio.sleep(1)
|
||
database.append(value)
|
||
print("Новые данные добавлены")
|
||
|
||
|
||
# Тут пишите ваш код
|
||
async def main():
|
||
async with AsyncListManager() as db_manager:
|
||
await db_manager.stage_append({'название': 'Настроить CI/CD', 'статус': 'В процессе'})
|
||
for db in database:
|
||
print(db)
|
||
|
||
asyncio.run(main())
|