Considere o seguinte código em Python:class colaborador: ...
Considere o seguinte código em Python:
class colaborador:
pass
def __init__(self, nome, setor, idade, salario):
self.nome = nome
self.setor = setor
self.idade = idade
self.salario = salario
adm_colab = colaborador("Sr Administrador", "protocolo", "36", 3500.00)
print (adm_colab.nome[0:8], adm_colab.setor, adm_colab.idade, adm_colab.salario)
Após a execução do código-fonte, será apresentado na tela do computador o seguinte resultado:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito: Letra D
Essa questão envolve conceitos fundamentais de programação em Python, mais especificamente sobre classes, objetos, atributos e slicing de strings. Para resolver a questão com sucesso, você precisa entender o código passo a passo:
Primeiro, uma classe chamada colaborador é definida com um método construtor __init__
que inicializa os atributos nome
, setor
, idade
e salario
do objeto. Note que idade
foi passada como uma string no exemplo dado, mas normalmente seria mais apropriado tratá-la como um inteiro.
Em seguida, um objeto chamado adm_colab é instanciado usando essa classe, com os valores específicos fornecidos para cada atributo.
Finalmente, a função print
é usada para imprimir alguns atributos do objeto adm_colab
. Aqui, o slicing da string [0:8]
é aplicado ao atributo nome
para exibir apenas os primeiros 8 caracteres, resultando em "Sr Admin" ao invés do nome completo "Sr Administrador".
Portanto, a saída final na tela será Sr Admin protocolo 36 3500.0
, onde:
- "Sr Admin" é o resultado do slicing da string do nome;
- "protocolo" é o setor;
- "36" é a idade passada como string;
- "3500.0" é o salário, que ao ser impresso, se converte para uma representação em ponto flutuante sem as casas decimais adicionais, mesmo tendo sido originalmente fornecido como
3500.00
.
Com esses detalhes em mente, a alternativa correta é a letra D, que combina todos os elementos corretamente como discutido acima.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
No argumento "adm_colab.nome[0:8]" significa que ele vai imprimir somente os caracteres da posição 0 até a posição 8.. Que nesse caso é "Sr Admin". Assim Já eliminando as alternativas A e E.
o restante dos argumentos "adm_colab.setor, adm_colab.idade, adm_colab.salario". Ele imprime o setor, a idade e o salário). As alternativas B e C só imprimem o salário restando somente como correta a alternativa D.
GABARITO D.
d-
ele mostra os valores para as vars do objeto. conforme declarado em adm_colab = colaborador("Sr Administrador", "protocolo", "36", 3500.00). exceto para self.nome, q esta adm_colab.nome[0:8], fazendo um string slicing ate ao 8° caracter: "Sr Admin"
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo