Utilizando dos métodos List e Zip para criação do dicionário de dados e dentro da função corrotina passando o nome das chaves.
import asyncio
users = list(zip(["Ana", "João", "Carla"], [True, False, False], [True, True, False]))
async def corrotina(user):
nome, tipo, prioridade = user
if not prioridade:
print(f"{nome} desativou as notificações. Nada foi enviado.")
return
if tipo:
print(f"Notificação VIP para {nome} enviada!")
return
print(f"Notificação normal para {nome} enviada!")
async def main():
print("Enviando notificações...")
tarefas = [asyncio.create_task(corrotina(u)) for u in users]
await asyncio.gather(*tarefas)
print("Todas as notificações foram processadas!")
asyncio.run(main())