Valida Questão#
Construa uma função que valida uma questão conforme as regras:
-
Verifique se as chaves
titulo,nivel,opcoesecorretaestão na questão.- Caso não, adicione no retorno a chave e valor conforme o exemplo
{'titulo': 'nao_encontrado'}.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
-
Verifique se a questão (dicionário principal) tem exatamente quatro chaves.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
{'outro': 'numero_chaves_invalido'}.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
-
Caso a chave
tituloexista, verifique se otituloestá vazio ou contém apenas espaços / caracteres em branco.- Caso sim, adicione no retorno a chave e valor conforme o exemplo
{'titulo': 'vazio'}.
- Caso sim, adicione no retorno a chave e valor conforme o exemplo
-
Caso a chave
nivelexista, verifique se onivelcontém um dos valoresfacil,mediooudificil.- Caso não, adicione no retorno a chave e valor conforme o exemplo
{'nivel': 'valor_errado'}.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
-
Caso a chave
opcoesexista, verifique se o valor da chaveopcoestem exatamente quatro chaves.- Caso não, adicione no retorno a chave e valor conforme o exemplo
{'opcoes': 'tamanho_invalido'}.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
- Caso a chave
opcoesexista e tenha exatamente quatro chaves em seu dicionário, verifique nasopcoesse as todasA,B,CeDexistem (e nada além disso).- Caso não, adicione no retorno a chave e valor conforme o exemplo
{'opcoes': 'chave_invalida_ou_nao_encontrada'}.
- Caso não, adicione no retorno a chave e valor conforme o exemplo
- Caso a chave
opcoesexista, tenha exatamente quatro chaves em seu dicionário e se as todasA,B,CeDexistem (e nada além disso), então verifique se alguma resposta de todas as opçõesA,B,CeDestá vazia ou contém apenas espaços / caracteres em branco.- Caso sim, adicione no retorno a chave e valor conforme o exemplo:
correta exista, verifique se a resposta correta está definida como A, B, C ou D.
- Caso não, adicione no retorno a chave e valor conforme o exemplo {'correta': 'valor_errado'}.
Exemplo 1:#
- Entrada:
-
questao: -
Saída:
Exemplo 2:#
- Entrada:
-
questao: -
Saída:
Sua função deve se chamar valida_questao.