from contextlib import asynccontextmanager @asynccontextmanager async def conn(): print("open") yield "c" print("close") async def main(): async with conn() as c: print(c) asyncio.run(main())