Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Erro na função listar_restaurante

Nessa função estou enfrentando erro no terminal:

def listar_restaurantes():
    exibir_subtitulo('Listando restaurantes')
    print(f'{'Nome do restaurante'.ljust(22)} | {'Categoria'.ljust(20)} | Status')
    for restaurante in restaurantes:
        nome_restaurante = restaurante['nome']
        categoria = restaurante['categoria']
        ativo = 'ativado' if restaurante['ativo'] else 'desativado'
        print(f'- {nome_restaurante.ljust(20)} | {categoria.ljust(20)} | {ativo}')
        ```
        
Terminal:
    print(f'{'Nome do restaurante'.ljust(22)} | {'Categoria'.ljust(20)} | Status')
              ^
SyntaxError: f-string: expecting '}'
4 respostas
solução!

Oii, Amanda! Tudo bem?

O erro que está tendo é devido ao uso de aspas simples dentro de uma f-tring que já está usando a aspas simples também.

Então, recomendo que utilize aspas duplas para delimitar a f-tring e aspas simples para as strings internas.

Segue um exemplo de como ficaria:

def listar_restaurantes():
    exibir_subtitulo('Listando restaurantes')
    print(f"{'Nome do restaurante'.ljust(22)} | {'Categoria'.ljust(20)} | Status")
    for restaurante in restaurantes:
        nome_restaurante = restaurante['nome']
        categoria = restaurante['categoria']
        ativo = 'ativado' if restaurante['ativo'] else 'desativado'
        print(f"- {nome_restaurante.ljust(20)} | {categoria.ljust(20)} | {ativo}")

Fique à vontade para copiar o exemplo acima e testar no seu código.

Espero ter ajudado. Continue praticando e se dedicando como está fazendo!

Bons estudos, Amanda!

Agradeço pela ajuda em enxergar as aspas ^^/

Obrigado pela resposta, Nathalia. Eu tive o mesmo erro da Amanda e fazendo essa alteração que você sugeriu, funcionou bem por aqui. Contudo, algo de errado não está certo... vendo de novo mesmo depois de encontrar a solução, notei que no código executado na aula todas as aspas são simples. Isso é o questão de sorte?

Oii, Estudante! Tudo bem?

Por nada, fico feliz em poder ajudar vocês com os estudos!

Ótima pergunta. Bom, isso pode acontecer devido à versão e atualização do Python. Sabemos que a tecnologia está em constante atualização e por vezes vão aprimorando-as para que boas práticas sejam praticadas, garantindo compatibilidade, legibilidade, consistência no código.

Espero ter esclarecido sua dúvida.

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software