Olá, Vinicius, como vai?
O comportamento que você descreve ocorre porque o código executa a função main logo após exibir a mensagem de sucesso, sem interromper o fluxo para que você consiga ler o que foi impresso no terminal. No Python, a função print apenas exibe o conteúdo e passa para a próxima linha de instrução imediatamente.
Para resolver essa questão, você deve utilizar a função input no lugar do último print ou logo após ele. O input aguarda uma interação do usuário antes de prosseguir com a execução do programa, permitindo que a mensagem de confirmação permaneça visível até que uma tecla seja pressionada.
Se você utilizar o código desta forma, o programa fará a pausa necessária:
def cadastrar_novo_restaurante():
os.system('cls')
print('Cadastro de novos restaurantes\n')
nome_do_restaurante = input('Digite o nome do restaurante que deseja cadastrar: ')
restarurantes.append(nome_do_restaurante)
print(f'O restaurante {nome_do_restaurante} foi cadastrado com sucesso')
input('Digite uma tecla para voltar ao menu principal: ')
main()
Espero ter ajudado.
Siga firme nos seus estudos e conte com o fórum sempre que precisar.
Abraços :)
Caso este post tenha lhe ajudado, por favor, marcar como solucionado