Questão FC670812
Durante o desenvolvimento de um sistema de gestão odontológica para uma clínica de médio porte, a equipe de tecnologia optou por criar uma aplicação multiplataforma com recursos de
Linguagens de Programação para Ciência de Dados
QUADRIX · 2025
Durante o desenvolvimento de um sistema de gestão odontológica para uma clínica de médio porte, a equipe de tecnologia optou por criar uma aplicação multiplataforma com recursos de agendamento, prontuário eletrônico e geração de relatórios financeiros. Para isso, diferentes módulos foram desenvolvidos em C#, Python e Java, aproveitando as características específicas de cada linguagem.
Com base nessa situação hipotética e nos conhecimentos a respeito de sintaxe, tipos de dados, estruturas de controle, classes, herança e polimorfismo em C#, Python e Java, julgue o item a seguir.
Em Python, é possível definir funções dentro de outras funções (funções aninhadas), o que pode ser útil para encapsular lógicas específicas de cálculo em relatórios.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A afirmação foi julgada CERTO porque em Python é permitido definir funções aninhadas (nested functions) dentro de outra função para encapsular lógica local.
Esse recurso é útil para criar cálculos auxiliares em geração de relatórios, mantendo a implementação organizada e sem poluir o escopo global. A função interna tem acesso às variáveis da função externa, possibilitando a formação de closures e o compartilhamento controlado de estado.
Quando necessário alterar uma variável externa, usa-se a palavra-chave nonlocal. Funções aninhadas não ficam visíveis fora da função que as contém, o que melhora coesão e legibilidade do código.
Portanto, afirmar que se pode usar funções dentro de outras em Python para encapsular cálculos em relatórios é correto.
Conteúdo do catálogo FC Concursos · Atualizado em