Questão de Programação — Python — Quadrix 2024
- Código
- qg347825
- Banca
- Quadrix
- Órgão
- COREN-PR
- Ano
- 2024
- Nível
- Superior
- Cargo
- Analista de Tecnologia da Informação
- CCerto
- EErrado
GabaritoC — Certo
functionGabarito: C — CERTO. Em Python, function não é uma palavra reservada; a palavra reservada para definir funções é def. A afirmação está correta, pois function é uma palavra comum que pode ser usada como nome de variável, função ou classe sem gerar erro de sintaxe. A fonte é a própria especificação da linguagem Python, que define um conjunto fixo de palavras reservadas (keywords) — e function não faz parte dele.
Para entender por que a afirmação é verdadeira, é preciso distinguir dois conceitos que frequentemente se confundem: palavra reservada e palavra-chave. Em Python, palavras reservadas (como def, class, if, for, while, return, lambda, import, from, try, except, finally, with, as, pass, break, continue, global, nonlocal, yield, assert, del, elif, else, in, is, not, or, and, raise, True, False, None) têm significado especial na sintaxe e não podem ser usadas como identificadores (nomes de variáveis, funções, classes etc.). Já function é apenas uma palavra comum do vocabulário da linguagem — ela não tem nenhum papel sintático reservado. Por isso, você pode escrever function = 10 ou def function(): sem erro.
Na prática, isso significa que, se você tentar usar def como nome de variável, o interpretador acusará SyntaxError. Mas function pode ser usada livremente. Por exemplo:
function = "sou uma variável"
print(function) # imprime: sou uma variável
def function():
return "sou uma função"
print(function()) # imprime: sou uma funçãoEsse código roda sem nenhum erro, provando que function não é reservada.
A confusão vem de outras linguagens: em JavaScript, function é uma palavra reservada (usada para declarar funções). Em Java, function não é reservada, mas def também não existe (usa-se public/private etc.). A banca explora exatamente essa transferência de conhecimento entre linguagens: o candidato que estudou JavaScript pode achar que function é reservada em Python também — mas não é.
Outra pegadinha comum é confundir function com def. Em Python, a palavra reservada para definir funções é def, e não function. Se a afirmação dissesse "Em Python, def não é uma palavra reservada", estaria errada. Mas a afirmação fala de function, que é livre.
Portanto, a assertiva está correta: function não é palavra reservada em Python.
A afirmação "Em Python, function não é considerada uma palavra reservada" é verdadeira. A lista de palavras reservadas do Python é fixa e não inclui function. Palavras como def, class, if, else, for, while, return, lambda, import, from, try, except, finally, with, as, pass, break, continue, global, nonlocal, yield, assert, del, elif, in, is, not, or, and, raise, True, False, None são reservadas; function não está nessa lista. Portanto, pode ser usada como identificador sem causar erro de sintaxe.
A banca explora a transferência de conhecimento entre linguagens. Em JavaScript, function é uma palavra reservada — mas em Python não é. O candidato que estudou JavaScript pode marcar "Errado" por associação, mas a regra do Python é diferente. Lembre-se: em Python, a palavra reservada para funções é def, não function.
Para resolver questões sobre palavras reservadas, decore a lista oficial do Python (disponível na documentação). Na dúvida, teste mentalmente: se você consegue usar a palavra como nome de variável sem erro, ela não é reservada. function passa no teste; def não.
Gabarito: C — CERTO.
Link permanente: /questoes/qg347825