1
resposta

Atividade 12.

import asyncio
import random

Sensor de temperatura

async def sensor_temperatura():
tempo = 0
while True:
await asyncio.sleep(2)
tempo += 2
temperatura = random.choice([21, 22, 23, 24, 25])
print(f"[{tempo}s] Temperatura: {temperatura}°C")

Sensor de umidade

async def sensor_umidade():
tempo = 0
while True:
await asyncio.sleep(3)
tempo += 3
umidade = random.choice([55, 58, 60, 62, 65])
print(f"[{tempo}s] Umidade: {umidade}%")

Sensor de qualidade do ar

async def sensor_qualidade_ar():
tempo = 0
while True:
await asyncio.sleep(5)
tempo += 5
qualidade = random.choice(["Boa", "Regular", "Ruim"])
print(f"[{tempo}s] Qualidade do ar: {qualidade}")

Função principal

async def main():
await asyncio.gather(
sensor_temperatura(),
sensor_umidade(),
sensor_qualidade_ar()
)

Executa o sistema

asyncio.run(main())

1 resposta

Oi, Luiz Henrique! Como vai?

Agradeço por compartilhar. Seu código ficou bem organizado para simular os três sensores rodando de forma assíncrona com asyncio.gather(). A ideia de usar tempos diferentes no sleep() mostra bem como cada sensor pode executar de maneira independente, sem travar os demais.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!