Oi, Fellipe! Como vai?
Seu código é sim uma possível solução para o problema. Você utilizou muito bem a condição com and para verificar se a hora está dentro do intervalo permitido, deixando a lógica clara e objetiva. Isso mostra que você entendeu corretamente o uso do if e else nas condicionais em Python.
Uma dica interessante para o futuro é utilizar operadores de comparação encadeados, deixando o código ainda mais enxuto. Veja este exemplo:
<pre><code>
hora_atual = int(input('Digite a hora atual: '))
if 8 <= hora_atual <= 18:
print('Acesso liberado.')
else:
print('Acesso negado.')
</code></pre>
Neste código, o Python verifica se o valor de hora_atual está entre 8 e 18 de forma mais simplificada.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!