Buscar

REVISÃO_AV1_PROGRAMACAO_III

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 74 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 74 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 74 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1a Questão 
 
 Python é uma linguagem multiparadigma. Identifique, abaixo, o paradigma que não 
pertence à linguagem Python: 
 
 
Orientado a aspectos 
 Polinomial 
 
Lógico 
 
Orientado a objetos 
 
Estruturado 
Respondido em 9/6/2019 2:25:52 PM 
 
 
Explicação: 
A resposta é a letra e, pois a, b, c e d são paradigmas da linguagem Python. 
Polinomial não é paradigma de computação e nem pertence à linguagem Python. 
 
 
 
 
 2a Questão 
 
A seguir estão algumas características da linguagem Python. Qual das opções é FALSA? 
 
 
É uma linguagem multiparadigma, abordando elementos de orientação a objetos e 
funcionais, entre outros. 
 
Python foi criada pelo neerlandês Guido van Rossum. 
 
Utiliza tipagem dinâmica, não sendo necessário especificar o tipo da variável. 
 
As funções map, reduce e filter são implementadas em Python para ajudar os 
programadores a adaptarem os recursos do Lisp. 
 É uma linguagem compilada, o que a torna mais rápida em tempo de execução. 
Respondido em 9/6/2019 2:26:52 PM 
 
 
Explicação: 
Python é uma linguagem interpretada, e não compilada. 
 
 
 
 
 3a Questão 
 
O que será impresso pelo código seguinte? 
 
print("ABC")#DEF 
#print("GHI") 
print("#JK")#LM 
print("NO#PQ") 
 
 
ABCNO 
 ABC#JKNO#PQ 
 
ABCJKNOPQ 
 
ABC#DEF#JK#LMNO#PQ 
 
ABCDEFGHIJKLMNOPQ 
Respondido em 9/6/2019 2:27:29 PM 
 
 
Explicação: 
Os únicos elementos que constituem comentários são: #DEF, #print("GHI"), #LM. Todos os 
demais serão impressos na ordem em que ocorrem no código. 
 
 
 
 
 4a Questão 
 
Qual das linguagens abaixo não é interpretada? 
 
 
Lua 
 
Python 
 
Basic 
 C 
 
Ruby 
Respondido em 9/6/2019 2:27:40 PM 
 
 
Explicação: 
A resposta é letra e, pois todas as outras linguagens são interpretadas, ou seja, possuem 
um interpretador, e C é uma linguagem ¿compilada¿, possui um ¿compilador¿ para gerar o 
código. 
 
 
 
 
 5a Questão 
 
Python é uma linguagem que possui o paradigma funcional além de outros. 
No paradigma funcional puro podemos substituir a repetição por meio de: 
 
 Recursividade 
 
Parâmetro 
 
Condicional 
 
Função 
 
Variável 
Respondido em 9/6/2019 2:27:55 PM 
 
 
Explicação: 
A repetição no paradigma funcional puro é realizada por meio da recursividade (letra d) . 
Variável e parâmetro não permitem repetição. 
Uma função é uma forte característica do paradigma funcional. 
Condicional existe no paradigma, mas é utilizado para decisões. 
 
 
 
 
 6a Questão 
 
O que vai ser impresso no código abaixo? tupla= (1, 2, 3, 4) tupla.append( (5, 6, 7) ) 
print(len(tupla)) 
 
 Vai gerar uma exceção 
 
7 
 
1 
 
5 
 
2 
Respondido em 9/6/2019 2:28:15 PM 
 
 
Explicação: Uma tupla não pode ser modificada. Vai gerar uma exceção. 
 
1a Questão 
 
Qual das instruções abaixo caracteriza o conceito de ¿tipagem dinâmica¿? 
 
 i = 2 
 
String x = ¿teste¿ 
 
int i = 5 
 
String a = 3 
 
2+3 = 5 
Respondido em 06/09/2019 14:38:50 
 
 
Explicação: 
A resposta correta é a letra a, dado que tipagem dinâmica é uma caracferística da 
linguagem, onde o próprio interpretador infere qual é o tipo da linguagem, no caso ele 
inferirá que i é uma variável do tipo inteiro. 
As letras b e c caracterizam tipagem estática, d é uma instrução de soma de dois números e 
a letra e, é uma instrução onde faltam as aspas para o tipo estático String 
 
 
 
 
 2a Questão 
 
Python é uma linguagem utilizada em muitas áreas. Em uma delas, a Ciência dos Dados 
(Data Science) ele é muito utilizado. Qual das respostas abaixo seria um exemplo de 
utilização de Data Science? 
 
 
instalar uma rede segura 
 
 programar um aplicativo para Android 
 estudar quantitativamente comportamentos de usuários de uma rede social 
 
programar um videogame 
 
construir um website 
Respondido em 06/09/2019 14:40:23 
 
 
Explicação: 
A resposta correta é a letra b, porque seriam utilizados algoritmos matemáticos para 
estudo de tendências na rede social. 
As letras a, c e d são construções de aplicações computacionais que não precisam ter 
tratamento científico e a letra e é uma aplicação de infraestrutura. 
 
 
 
 
 3a Questão 
 
A função range( ), em python, permite gerar uma sequência de números. Considere a 
seguinte instrução: 
print(range(2,7)) 
Qual é o resultado deste comando? 
 
 
[2,3,4,5,6,7] 
 [2,3,4,5,6] 
 
[2,7] 
 
[2,5,7] 
 
[2,4,6] 
Respondido em 06/09/2019 14:40:48 
 
 
Explicação: 
A resposta correta é a letra b. 
O comando range( ) retorna uma faixa de números que se inicia pelo primeiro argumento e 
termina no último argumento menos um, ou seja nesse caso a faixa começa em 2 e 
terminará em 6. 
 
 
 
 
 4a Questão 
 
Um número imaginário como 3+4i pode ser representado em Python por qual dos 
seguintes tipos primitivos: 
 
 
tuple 
 
float 
 
array 
 
int 
 complex 
Respondido em 06/09/2019 14:41:24 
 
 
Explicação: 
Em Python existe o tipo primitivo ¿complex¿ que representa números complexos 
(ou também chamados imaginários) 
 
 
 
 
 5a Questão 
 
Considere o seguinte código em Python: 
a = 1 
b = 2 
c = a+b 
print ("o resultado",c); 
Suponha que este código esteja no arquivo teste.py, qual seria a chamada correta através 
do prompt do sistema operacional? 
 
 
p teste.py 
 
py teste.py 
 
python teste 
 
p teste 
 python teste.py 
Respondido em 06/09/2019 14:41:46 
 
 
Explicação: 
A resposta é a letra d, pois um programa em python é chamado usando o comando python 
e o nome do arquivo com a terminação .py. 
As outras chamadas não são funcionais. 
 
 
 
 
 6a Questão 
 
Considere a seguinte linha de comando: 
print(float(3) + 3); 
Qual é o resultado dessa expressão? 
 
 6.0 
 
6 
 
3.0+3 
 
ERROR 
 
0 
Respondido em 06/09/2019 14:42:12 
 
 
Explicação: 
A expressão float(3) será convertida para 3.0 e quando somada a 3 Python dará como 
resultado 6.0 porque o tipo float engloba o tipo inteiro. 
 
 
 
 
 7a Questão 
 
Qual dos tipos abaixo não pertence a linguagem Python? 
 
 cordas 
 
dicionários 
 
listas 
 
inteiros 
 
tuplas 
Respondido em 06/09/2019 14:42:23 
 
 
Explicação: 
Cordas não é um tipo computacional e não faz parte dos tipos em Python. 
 
 
 
 
 8a Questão 
 
Considere o seguinte código em Python: 
 
valor1 = input("digite um numero"); 
valor2 = input("digite um outro numero"); 
resultado = float((int(valor1) + int(valor2)))/2; 
print(resultado); 
 
Considerando que variáveis de valores recebam os inteiros 4 e 6, qual é o resultado final? 
 
 5.0 
 
10.0 
 
ERROR 
 
5 
 
10 
Respondido em 06/09/2019 14:43:27 
 
 
Explicação: 
O resultado da média dos números 4 e 6 será 5.0, o valor será do tipo float porque a função 
float() converte a soma dos dois inteiros para float. 
 
1a Questão 
 
Considere o seguinte código em Python: 
for valor in range(2,13): 
 if valor%2 != 0: 
 print(valor) 
Qual é o último número a ser impresso na tela? 
 
 11 
 
2 
 
5 
 
13 
 
10 
Respondido em 09/09/2019 09:19:25 
 
 
Explicação: 
O último valor será 11, pois é o último ímpar da faixa coberta pela função range( ) 
 
 
 
 
 2a QuestãoO que será impresso, caso o código abaixo seja executado duas vezes, primeiramente com 
o valor 5 e depois com o valor 10? 
x = int(input()) 
if x>=5: 
 print(x+10) 
 if x<10: 
 print("menor que 10") 
else: 
 if x>8: 
 print("maior que 8") 
 else: 
 print("menor ou igual a 8") 
 
 
Primeiramente imprimirá 20 e na segunda execução 15 
 Primeiramente imprimirá 15 e o texto "menor que 10". Na segunda execução 
imprimirá 20 
 
Primeiramente imprimirá 15 e na segunda execução 20 
 
Primeiramente imprimirá 15 e na segunda execução imprimirá além do número 
20, o texto "maior que 8" 
 
Primeiramente imprimirá 5 e na segunda execução 10 
Respondido em 09/09/2019 09:19:57 
 
 
Explicação: 
Como ambos os valores são maiores ou iguais a 5, sempre executa o primeiro if, sendo 
impresso o valor + 10 (15 e 20), além da frase "é menor que 10" para 5, devido ao if (x<10) 
interno ao bloco. 
 
 
 
 
 3a Questão 
 
Considere o seguinte conjunto de instruções em Python: 
frase = 'este pode ser um teste' 
contador = 0 
for letra in frase: 
 if letra == 'e': 
 contador = contador + 1 
print(contador) 
Qual é o resultado da variável contador após a realização das instruções? 
 
 6 
 
4 
 
5 
 
8 
 
1 
Respondido em 09/09/2019 09:21:34 
 
 
Explicação: 
O código conta a quantidade de letras ¿e¿ que aparecem na variável frase, neste caso a 
resposta é a letra b. 
 
 
 
 
 4a Questão 
 
Analise as informações abaixo: 
I. Python é interpretado 
II. Python é orientado a objetos 
III. Python é interativo 
Estão corretas as afirmações: 
 
 I, II e III 
 
Somente I e II 
 
Somente II e III 
 
Somente I 
 
Somente I e III 
Respondido em 09/09/2019 09:22:24 
 
 
Explicação: Todas as afirmações estão corretas 
 
 
 
 
 5a Questão 
 
 Qual é a função do operador relacional ¿==¿ em Python? 
 
 igual 
 
ou lógico 
 
atribuição 
 
e lógico 
 
diferente 
Respondido em 09/09/2019 09:22:31 
 
 
Explicação: 
== signfica o operador lógico de igualdade em Python, neste caso a resposta é a letra a. 
 
 
 
 
 6a Questão 
 
Considere o seguinte código em Python: 
valor = 7 
while (valor>3): 
 print(valor) 
 valor -= 1 
else: 
 ultimo_valor = valor 
 print(ultimo_valor) 
Qual é o resultado da variável ¿ultimo_valor¿, quando terminar o código? 
 
 
5 
 
6 
 
4 
 3 
 
7 
Respondido em 09/09/2019 09:22:55 
 
 
Explicação: 
A condição é imprimir enquanto o valor for maior que 3. Quando chegar ao valor 3, o 
código executará a instrução else, e terá o valor igual a 3. 
A resposta correta é a letra e. 
 
1a Questão 
 
Toda linguagem orientada a objetos permite a especificação de métodos construtores na 
classe, os quais são responsáveis pela inicialização do objeto recém-alocado na memória. 
Na linguagem Python este método recebe o seguinte nome: 
 
 
constructor 
 
def 
 
self 
 __init__ 
 
this 
Respondido em 09/09/2019 11:33:41 
 
 
Explicação: 
O método construtor é denominado __init__, sendo definido, como os demais métodos, 
através de def __init__(self, parâmetros...). Quanto aos demais, def serve para criar uma 
função ou método e self é o ponteiro de auto-referência implícito do Python. O this e o 
constructor não pertencem à sintaxe Python. 
 
 
 
 
 2a Questão 
 
Para acessar o atributo de um objeto Python, pode ser utilizado, alternativamente ao 
acesso direto, a seguinte função: 
 
 
setattr 
 
hasattr 
 getattr 
 
expattr 
 
delattr 
Respondido em 09/09/2019 11:33:52 
 
 
Explicação: 
Funções: getattr - retorna o valor do atributo, hasattr - testa se existe o atributo, setattr - 
seta o valor do atributo, delattr - remove o atributo, expattr - não existe. 
 
 
 
 
 3a Questão 
 
 Ao definirmos uma classe Carro em Python, qual seria um possível método para ela? 
 
 def acelerar(vel): 
 
def somar(a,b): 
 
define plantar(lugar): 
 
define fechar(): 
 
define acender(valor): 
Respondido em 09/09/2019 11:34:09 
 
 
Explicação: 
A resposta é a letra b, porque um método é uma ação a ser executado pelo objeto, no 
caso, um carro possui como uma ação possível a aceleração, as letras c, d e e estão com 
uma palavra chave define que não é do python, e a letra a, somar dois parâmetros não se 
encaixa no objeto carro. 
 
 
 
 
 4a Questão 
 
Considere o seguinte código em Python: 
class Complexo: 
 def __init__(self, parte_real, parte_imag): 
 self.r = parte_real 
 self.i = parte_imag 
Quando executarmos o seguinte comando: 
x = Complexo(3.0, -4.5) qual será o resultado de x.r? 
 
 
 
-7.5 
 
-1.5 
 3.0 
 
-4.5 
 
0 
Respondido em 09/09/2019 11:35:16 
 
 
Explicação: 
A resposta é a letra a, porque estaremos iniciando o objeto Complexo para a parte real 
(x.r) igual a 3.0 e a parte imaginária para -4.5 
 
 
 
 
 5a Questão 
 
Para construir uma função com três parâmetros em Python, como deve ser o cabeçalho? 
 
 
define(a:b) 
 
define (a,b,c) 
 
def func(a,b,c) 
 def func(a,b,c): 
 
define func(a,b,c) 
Respondido em 09/09/2019 11:35:41 
 
 
Explicação: 
A resposta é a letra d, que contém a sintaxe correta de definição de uma função em 
Python. 
 
 
 
 
 6a Questão 
 
Em orientação a objetos, a característica que determina a possibilidade de um 
descendente alterar a funcionalidade de um método herdado é deominada: 
 
 
abstração 
 polimorfismo 
 
herança 
 
composição 
 
encapsulamento 
Respondido em 09/09/2019 11:35:59 
 
 
Explicação: 
Através da herança é possível criar uma nova classe a partir de outra já existente, 
aproveitando suas características, mas algumas funcionalidades podem não ser adequadas, 
podendo ser modificadas através da sobrescrita destes métodos, segundo um processo 
denominado polimorfismo. 
 
1a Questão 
 
Seja a classe definida como FormaGeométrica em Python, qual das opções abaixo poderia 
ser uma classe herdada dessa classe? 
 
 
Nenhuma das opções está correta. 
 
class Carro(FormaGeometrica) 
 
class Pessoa(FormaGeometrica) 
 class Quadrado(FormaGeometrica) 
 
class Animal(FormaGeometrica) 
Respondido em 09/09/2019 11:41:46 
 
 
Explicação: 
A resposta é class Quadrado(FormaGeometrica), classe Quadrado, porque uma subclasse 
herda as propriedades da superclasse, e como só existe uma única forma geométrica entre 
as opções ela é a resposta correta. 
 
 
 
 
 2a Questão 
 
Qual é a saída do comando abaixo: >>> a='10' >>> print(a*2) 
 
 1010 
 
Erro! 
 
20 
 
`20¿ 
 
100 
Respondido em 09/09/2019 11:41:56 
 
 
Explicação: A variável a contém uma string. Usar o operador "*" vai repeti-la 
 
 
 
 
 3a Questão 
 
Qual é o objetivo do comando super() na declaração abaixo? 
class Carro(Veiculo): 
 def __init__(self,vel,marca): 
 super().__init__(vel) 
 self.marca = marca 
 
 
Uso de polimorfismo em Python. 
 
Inicializa a variável vel. 
 
Nenhuma das respostas anteriores está correta. 
 Permite que a classe herde o método da superclasse. 
 
Apenas a sintaxe normal para a definição de uma classe simples em Python. 
Respondido em 09/09/2019 11:42:29 
 
 
Explicação: 
A resposta é letra a. É desse modo que se implementa a sobrecarga de métodos em 
Python, possibilitando extender a funcionalidadeda superclasse para as classes filhas. 
 
 
 
 
 4a Questão 
 
Qual a função do método __str__ em Python? 
 
 
Nenhuma das anteriores está correta. 
 Converter um objeto para ser apresentado como String 
 
Transformar um inteiro em uma String 
 
Converter um float em String 
 
Identificar uma string especifica dentro de um texto 
Respondido em 09/09/2019 11:42:48 
 
 
Explicação: 
O método __str__ é equivalente ao método toString em Java, por exemplo. É a forma de 
representar um objeto como uma String. A resposta certa é "Converter um objeto para ser 
apresentado como String". 
 
 
 
 
 5a Questão 
 
O que o código abaixo imprime? 
class Vendas: 
 def __init__(self, id): 
 self.id = id 
 id = 100 
val = Vendas(123) 
print (val.id) 
 
 123 
 
Nada. Vai dar pau 
 
100 
 
Nenhuma das anteriores 
 
Id 
Respondido em 09/09/2019 11:42:59 
 
 
Explicação: O construtor vai fazer a atribuição para a variável id do objeto val 
 
 
 
 
 6a Questão 
 
Seja uma superclasse veículo contendo um método acelerar(valor) com duas subclasses, 
carro (objeto C) e motocicleta (objeto M). 
Identifique abaixo uma chamada de método polimórfico em Python: 
 
 C.acelerar(20) 
 
A.acelerar.M 
 
acelera(M) 
 
C.M.acelerar(45) 
 
Nenhuma das respostas anteriores está correta. 
Respondido em 09/09/2019 11:43:46 
 
 
Explicação: 
Um método polimórfico é um método que se adapta ao objeto, no caso da questão, um 
véiculo pode acelerar, mas moto e carro são acelerados de modos diferentes. A resposta 
para a chamada correta em Python é a letra C.acelerar(20). 
 
 
 
 
 7a Questão 
 
Considere a seguinte definição da classe fração: 
class Fracao: 
 def __init__(self,num,den): 
 self.num = num 
 self.den = den 
Qual seria um possivel cabeçalho para um método de multiplicar duas frações? 
 
 def __mul__(self,fracao): 
 
Nenhuma das anteriores está correta. 
 
f.multiplicar(f) 
 
fracao.multiplicar(f1) 
 
def mul(fracao1, fracao2) 
Respondido em 09/09/2019 11:44:01 
 
 
Explicação: 
A resposta é: 
def __mul__(self,fracao): 
onde é passado como parâmetro um objeto da classe Fracao de onde serão retirados o 
numerador e o denominador. 
Abaixo o código desse método: 
def mul(self,fracao): 
 return Fracao(self.num*fracao.num, 
 self.den*fracao.den) 
 
 
 
 
 8a Questão 
 
Qual dos comandos abaixo define uma relação de herança em Python? 
 
 class Carro(Veiculo) : 
 
class Carro is Veiculo 
 
Carro is Veiculo 
 
class Carro extends Veiculo 
 
class Carro inherits Veiculo 
Respondido em 09/09/2019 11:44:18 
 
 
Explicação: 
A resposta é a letra a, que tem a sintaxe correta para definir, em Python, que a classe Carro 
é uma extensão da classe Veiculo. 
 
1a Questão 
 
 Python é uma linguagem multiparadigma. Identifique, abaixo, o paradigma que não 
pertence à linguagem Python: 
 
 
Orientado a aspectos 
 
Lógico 
 Polinomial 
 
Estruturado 
 
Orientado a objetos 
Respondido em 06/09/2019 14:33:02 
 
 
Explicação: 
A resposta é a letra e, pois a, b, c e d são paradigmas da linguagem Python. 
Polinomial não é paradigma de computação e nem pertence à linguagem Python. 
 
 
 
 
 2a Questão 
 
A seguir estão algumas características da linguagem Python. Qual das opções é FALSA? 
 
 
É uma linguagem multiparadigma, abordando elementos de orientação a objetos e 
funcionais, entre outros. 
 
Python foi criada pelo neerlandês Guido van Rossum. 
 
As funções map, reduce e filter são implementadas em Python para ajudar os 
programadores a adaptarem os recursos do Lisp. 
 
Utiliza tipagem dinâmica, não sendo necessário especificar o tipo da variável. 
 É uma linguagem compilada, o que a torna mais rápida em tempo de execução. 
Respondido em 06/09/2019 14:33:14 
 
 
Explicação: 
Python é uma linguagem interpretada, e não compilada. 
 
 
 
 
 3a Questão 
 
O que será impresso pelo código seguinte? 
 
print("ABC")#DEF 
#print("GHI") 
print("#JK")#LM 
print("NO#PQ") 
 
 ABC#JKNO#PQ 
 
ABCDEFGHIJKLMNOPQ 
 
ABCNO 
 
ABCJKNOPQ 
 
ABC#DEF#JK#LMNO#PQ 
Respondido em 06/09/2019 14:33:28 
 
 
Explicação: 
Os únicos elementos que constituem comentários são: #DEF, #print("GHI"), #LM. Todos os 
demais serão impressos na ordem em que ocorrem no código. 
 
 
 
 
 4a Questão 
 
Qual das linguagens abaixo não é interpretada? 
 
 
Basic 
 C 
 
Ruby 
 
Python 
 
Lua 
Respondido em 06/09/2019 14:33:33 
 
 
Explicação: 
A resposta é letra e, pois todas as outras linguagens são interpretadas, ou seja, possuem 
um interpretador, e C é uma linguagem ¿compilada¿, possui um ¿compilador¿ para gerar o 
código. 
 
 
 
 
 5a Questão 
 
Python é uma linguagem que possui o paradigma funcional além de outros. 
No paradigma funcional puro podemos substituir a repetição por meio de: 
 
 
Parâmetro 
 
Função 
 Recursividade 
 
Condicional 
 
Variável 
Respondido em 06/09/2019 14:33:45 
 
 
Explicação: 
A repetição no paradigma funcional puro é realizada por meio da recursividade (letra d) . 
Variável e parâmetro não permitem repetição. 
Uma função é uma forte característica do paradigma funcional. 
Condicional existe no paradigma, mas é utilizado para decisões. 
 
 
 
 
 6a Questão 
 
O que vai ser impresso no código abaixo? tupla= (1, 2, 3, 4) tupla.append( (5, 6, 7) ) 
print(len(tupla)) 
 
 Vai gerar uma exceção 
 
2 
 
7 
 
1 
 
5 
Respondido em 06/09/2019 14:34:03 
 
 
Explicação: Uma tupla não pode ser modificada. Vai gerar uma exceção. 
 
1a Questão 
 
Qual o resultado da seguinte linha em Python: 
 print(int(¿1000¿) + 1000); 
 
 
10000 
 
ERROR 
 
0 
 2000 
 
1000 
Respondido em 06/09/2019 14:43:46 
 
 
Explicação: 
A resposta é 2000 pois a string ¿1000¿ será convertida para o número inteiro que poderá 
ser somado a 1000 e ter como resultado 2000. 
 
 
 
 
 2a Questão 
 
A estrutura de decisão mais geral, em Python, é formada pelos seguintes comandos: 
 
 
if, then, else 
 
If, elif 
 
if, then 
 
if , else 
 if, else, elif 
Respondido em 06/09/2019 14:43:59 
 
 
Explicação: 
A estrutura de repetição mais geral em Python é formada por if, Else e Elif. 
 
 
 
 
 3a Questão 
 
O que é necessário para se criar uma nova instância de uma classe? 
 
 
Um método que retorna um valor 
 
Um método qualquer 
 Um construtor 
 
Um objeto 
 
Uma classe 
Respondido em 09/09/2019 09:09:49 
 
 
Explicação: Todo objeto (instância) precisa de um construtor, mesmo que não seja definido 
e seja usado o construtor padrão 
 
 
 
 
 4a Questão 
 
Seja a string em Python: 
str = 'Python'; 
Qual o resultado da expressão: 
print(str[0]); 
 
 
h 
 
t 
 
o 
 
y 
 P 
Respondido em 09/09/2019 09:10:00 
 
 
Explicação: 
A resposta é P, pois em python as cadeias de caracteres começam com o primeiro 
elemento 0 (zero). 
 
 
 
 
 5a Questão 
 
Qual dos tipos abaixo não pertence a linguagem Python? 
 
 
dicionários 
 cordas 
 
inteiros 
 
listas 
 
tuplas 
Respondido em 09/09/2019 09:10:14 
 
 
Explicação: 
Cordas não é um tipo computacional e não faz parte dos tipos em Python.6a Questão 
 
Considere o seguinte código em Python: 
 
valor1 = input("digite um numero"); 
valor2 = input("digite um outro numero"); 
resultado = float((int(valor1) + int(valor2)))/2; 
print(resultado); 
 
Considerando que variáveis de valores recebam os inteiros 4 e 6, qual é o resultado final? 
 
 
10.0 
 5.0 
 
5 
 
10 
 
ERROR 
Respondido em 09/09/2019 09:10:45 
 
 
Explicação: 
O resultado da média dos números 4 e 6 será 5.0, o valor será do tipo float porque a função 
float() converte a soma dos dois inteiros para float. 
 
 
 
 
 7a Questão 
 
Qual das instruções abaixo caracteriza o conceito de ¿tipagem dinâmica¿? 
 
 
String a = 3 
 
int i = 5 
 
String x = ¿teste¿ 
 
2+3 = 5 
 i = 2 
Respondido em 09/09/2019 09:10:54 
 
 
Explicação: 
A resposta correta é a letra a, dado que tipagem dinâmica é uma caracferística da 
linguagem, onde o próprio interpretador infere qual é o tipo da linguagem, no caso ele 
inferirá que i é uma variável do tipo inteiro. 
As letras b e c caracterizam tipagem estática, d é uma instrução de soma de dois números e 
a letra e, é uma instrução onde faltam as aspas para o tipo estático String 
 
 
 
 
 8a Questão 
 
Considere o seguinte código em Python: 
a = 1 
b = 2 
c = a+b 
print ("o resultado",c); 
Suponha que este código esteja no arquivo teste.py, qual seria a chamada correta através 
do prompt do sistema operacional? 
 
 python teste.py 
 
p teste.py 
 
python teste 
 
py teste.py 
 
p teste 
Respondido em 09/09/2019 09:12:16 
 
 
Explicação: 
A resposta é a letra d, pois um programa em python é chamado usando o comando python 
e o nome do arquivo com a terminação .py. 
As outras chamadas não são funcionais. 
 
1a Questão 
 
Considere o seguinte código em Python: 
for valor in range(2,13): 
 if valor%2 != 0: 
 print(valor) 
Qual é o último número a ser impresso na tela? 
 
 11 
 
2 
 
10 
 
13 
 
5 
Respondido em 09/09/2019 09:23:20 
 
 
Explicação: 
O último valor será 11, pois é o último ímpar da faixa coberta pela função range( ) 
 
 
 
 
 2a Questão 
 
Analise as informações abaixo: 
I. Python é interpretado 
II. Python é orientado a objetos 
III. Python é interativo 
Estão corretas as afirmações: 
 
 
Somente I 
 
Somente I e II 
 I, II e III 
 
Somente I e III 
 
Somente II e III 
Respondido em 09/09/2019 09:23:53 
 
 
Explicação: Todas as afirmações estão corretas 
 
 
 
 
 3a Questão 
 
Considere o seguinte conjunto de instruções em Python: 
frase = 'este pode ser um teste' 
contador = 0 
for letra in frase: 
 if letra == 'e': 
 contador = contador + 1 
print(contador) 
Qual é o resultado da variável contador após a realização das instruções? 
 
 
5 
 
8 
 
1 
 6 
 
4 
Respondido em 09/09/2019 09:24:01 
 
 
Explicação: 
O código conta a quantidade de letras ¿e¿ que aparecem na variável frase, neste caso a 
resposta é a letra b. 
 
 
 
 
 4a Questão 
 
O que será impresso, caso o código abaixo seja executado duas vezes, primeiramente com 
o valor 5 e depois com o valor 10? 
x = int(input()) 
if x>=5: 
 print(x+10) 
 if x<10: 
 print("menor que 10") 
else: 
 if x>8: 
 print("maior que 8") 
 else: 
 print("menor ou igual a 8") 
 
 Primeiramente imprimirá 15 e o texto "menor que 10". Na segunda execução 
imprimirá 20 
 
Primeiramente imprimirá 20 e na segunda execução 15 
 
Primeiramente imprimirá 15 e na segunda execução imprimirá além do número 
20, o texto "maior que 8" 
 
Primeiramente imprimirá 5 e na segunda execução 10 
 
Primeiramente imprimirá 15 e na segunda execução 20 
Respondido em 09/09/2019 09:24:27 
 
 
Explicação: 
Como ambos os valores são maiores ou iguais a 5, sempre executa o primeiro if, sendo 
impresso o valor + 10 (15 e 20), além da frase "é menor que 10" para 5, devido ao if (x<10) 
interno ao bloco. 
 
 
 
 
 5a Questão 
 
 Qual é a função do operador relacional ¿==¿ em Python? 
 
 
ou lógico 
 igual 
 
e lógico 
 
atribuição 
 
diferente 
Respondido em 09/09/2019 09:24:31 
 
 
Explicação: 
== signfica o operador lógico de igualdade em Python, neste caso a resposta é a letra a. 
 
 
 
 
 6a Questão 
 
Considere o seguinte código em Python: 
valor = 7 
while (valor>3): 
 print(valor) 
 valor -= 1 
else: 
 ultimo_valor = valor 
 print(ultimo_valor) 
Qual é o resultado da variável ¿ultimo_valor¿, quando terminar o código? 
 
 
4 
 3 
 
5 
 
6 
 
7 
Respondido em 09/09/2019 09:24:36 
 
 
Explicação: 
A condição é imprimir enquanto o valor for maior que 3. Quando chegar ao valor 3, o 
código executará a instrução else, e terá o valor igual a 3. 
A resposta correta é a letra e. 
 
1a Questão 
 
Em orientação a objetos, a característica que determina a possibilidade de um 
descendente alterar a funcionalidade de um método herdado é deominada: 
 
 
composição 
 polimorfismo 
 
abstração 
 
encapsulamento 
 
herança 
Respondido em 09/09/2019 11:36:14 
 
 
Explicação: 
Através da herança é possível criar uma nova classe a partir de outra já existente, 
aproveitando suas características, mas algumas funcionalidades podem não ser adequadas, 
podendo ser modificadas através da sobrescrita destes métodos, segundo um processo 
denominado polimorfismo. 
 
 
 
 
 2a Questão 
 
Para construir uma função com três parâmetros em Python, como deve ser o cabeçalho? 
 
 
define func(a,b,c) 
 
define (a,b,c) 
 def func(a,b,c): 
 
define(a:b) 
 
def func(a,b,c) 
Respondido em 09/09/2019 11:36:21 
 
 
Explicação: 
A resposta é a letra d, que contém a sintaxe correta de definição de uma função em 
Python. 
 
 
 
 
 3a Questão 
 
 Ao definirmos uma classe Carro em Python, qual seria um possível método para ela? 
 
 
define acender(valor): 
 
define plantar(lugar): 
 
define fechar(): 
 def acelerar(vel): 
 
def somar(a,b): 
Respondido em 09/09/2019 11:36:26 
 
 
Explicação: 
A resposta é a letra b, porque um método é uma ação a ser executado pelo objeto, no 
caso, um carro possui como uma ação possível a aceleração, as letras c, d e e estão com 
uma palavra chave define que não é do python, e a letra a, somar dois parâmetros não se 
encaixa no objeto carro. 
 
 
 
 
 4a Questão 
 
Para acessar o atributo de um objeto Python, pode ser utilizado, alternativamente ao 
acesso direto, a seguinte função: 
 
 
expattr 
 
setattr 
 
hasattr 
 getattr 
 
delattr 
Respondido em 09/09/2019 11:37:06 
 
 
Explicação: 
Funções: getattr - retorna o valor do atributo, hasattr - testa se existe o atributo, setattr - 
seta o valor do atributo, delattr - remove o atributo, expattr - não existe. 
 
 
 
 
 5a Questão 
 
Considere o seguinte código em Python: 
class Complexo: 
 def __init__(self, parte_real, parte_imag): 
 self.r = parte_real 
 self.i = parte_imag 
Quando executarmos o seguinte comando: 
x = Complexo(3.0, -4.5) qual será o resultado de x.r? 
 
 
 
-7.5 
 
-4.5 
 
-1.5 
 
0 
 3.0 
Respondido em 09/09/2019 11:37:22 
 
 
Explicação: 
A resposta é a letra a, porque estaremos iniciando o objeto Complexo para a parte real 
(x.r) igual a 3.0 e a parte imaginária para -4.56a Questão 
 
Toda linguagem orientada a objetos permite a especificação de métodos construtores na 
classe, os quais são responsáveis pela inicialização do objeto recém-alocado na memória. 
Na linguagem Python este método recebe o seguinte nome: 
 
 
self 
 
this 
 __init__ 
 
def 
 
constructor 
Respondido em 09/09/2019 11:37:25 
 
 
Explicação: 
O método construtor é denominado __init__, sendo definido, como os demais métodos, 
através de def __init__(self, parâmetros...). Quanto aos demais, def serve para criar uma 
função ou método e self é o ponteiro de auto-referência implícito do Python. O this e o 
constructor não pertencem à sintaxe Python. 
 
1a Questão 
 
Qual dos comandos abaixo define uma relação de herança em Python? 
 
 
class Carro inherits Veiculo 
 
class Carro extends Veiculo 
 class Carro(Veiculo) : 
 
Carro is Veiculo 
 
class Carro is Veiculo 
Respondido em 09/09/2019 11:44:34 
 
 
Explicação: 
A resposta é a letra a, que tem a sintaxe correta para definir, em Python, que a classe Carro 
é uma extensão da classe Veiculo. 
 
 
 
 
 2a Questão 
 
Qual a função do método __str__ em Python? 
 
 
Identificar uma string especifica dentro de um texto 
 
Transformar um inteiro em uma String 
 
Converter um float em String 
 Converter um objeto para ser apresentado como String 
 
Nenhuma das anteriores está correta. 
Respondido em 09/09/2019 11:44:41 
 
 
Explicação: 
O método __str__ é equivalente ao método toString em Java, por exemplo. É a forma de 
representar um objeto como uma String. A resposta certa é "Converter um objeto para ser 
apresentado como String". 
 
 
 
 
 3a Questão 
 
Considere a seguinte definição da classe fração: 
class Fracao: 
 def __init__(self,num,den): 
 self.num = num 
 self.den = den 
Qual seria um possivel cabeçalho para um método de multiplicar duas frações? 
 
 def __mul__(self,fracao): 
 
fracao.multiplicar(f1) 
 
def mul(fracao1, fracao2) 
 
Nenhuma das anteriores está correta. 
 
f.multiplicar(f) 
Respondido em 09/09/2019 11:44:51 
 
 
Explicação: 
A resposta é: 
def __mul__(self,fracao): 
onde é passado como parâmetro um objeto da classe Fracao de onde serão retirados o 
numerador e o denominador. 
Abaixo o código desse método: 
def mul(self,fracao): 
 return Fracao(self.num*fracao.num, 
 self.den*fracao.den) 
 
 
 
 
 4a Questão 
 
O que o código abaixo imprime? 
class Vendas: 
 def __init__(self, id): 
 self.id = id 
 id = 100 
val = Vendas(123) 
print (val.id) 
 
 123 
 
Nenhuma das anteriores 
 
Id 
 
Nada. Vai dar pau 
 
100 
Respondido em 09/09/2019 11:45:02 
 
 
Explicação: O construtor vai fazer a atribuição para a variável id do objeto val 
 
 
 
 
 5a Questão 
 
Seja uma superclasse veículo contendo um método acelerar(valor) com duas subclasses, 
carro (objeto C) e motocicleta (objeto M). 
Identifique abaixo uma chamada de método polimórfico em Python: 
 
 
Nenhuma das respostas anteriores está correta. 
 
C.M.acelerar(45) 
 
acelera(M) 
 
A.acelerar.M 
 C.acelerar(20) 
Respondido em 09/09/2019 11:45:11 
 
 
Explicação: 
Um método polimórfico é um método que se adapta ao objeto, no caso da questão, um 
véiculo pode acelerar, mas moto e carro são acelerados de modos diferentes. A resposta 
para a chamada correta em Python é a letra C.acelerar(20). 
 
 
 
 
 6a Questão 
 
Qual é o objetivo do comando super() na declaração abaixo? 
class Carro(Veiculo): 
 def __init__(self,vel,marca): 
 super().__init__(vel) 
 self.marca = marca 
 
 
Apenas a sintaxe normal para a definição de uma classe simples em Python. 
 Permite que a classe herde o método da superclasse. 
 
Uso de polimorfismo em Python. 
 
Nenhuma das respostas anteriores está correta. 
 
Inicializa a variável vel. 
Respondido em 09/09/2019 11:45:27 
 
 
Explicação: 
A resposta é letra a. É desse modo que se implementa a sobrecarga de métodos em 
Python, possibilitando extender a funcionalidade da superclasse para as classes filhas. 
 
 
 
 
 7a Questão 
 
Considere a seguinte função em Python: 
def func(a,b): 
 for valor in range(a,b): 
 print(valor) 
Qual o resultado da chamada func(1,3)? 
 
 
1, 2, 3 
 
2 
 1, 2 
 
1 
 
3 
Respondido em 09/09/2019 11:46:06 
 
 
Explicação: 
O resultado é a letra a. São passados dois parâmetros a e b para a função range( ), que 
exibirá uma faixa entre 1 e 3, menos o último valor (3, no caso) 
 
 
 
 
 8a Questão 
 
Qual é a saída do comando abaixo: >>> a='10' >>> print(a*2) 
 
 
100 
 
Erro! 
 
`20¿ 
 
20 
 1010 
Respondido em 09/09/2019 11:46:13 
 
 
Explicação: A variável a contém uma string. Usar o operador "*" vai repeti-la 
 
1a Questão 
 
 Python é uma linguagem multiparadigma. Identifique, abaixo, o paradigma que não 
pertence à linguagem Python: 
 
 Polinomial 
 
Estruturado 
 
Orientado a objetos 
 
Lógico 
 
Orientado a aspectos 
Respondido em 06/09/2019 14:35:46 
 
 
Explicação: 
A resposta é a letra e, pois a, b, c e d são paradigmas da linguagem Python. 
Polinomial não é paradigma de computação e nem pertence à linguagem Python. 
 
 
 
 
 2a Questão 
 
A seguir estão algumas características da linguagem Python. Qual das opções é FALSA? 
 
 É uma linguagem compilada, o que a torna mais rápida em tempo de execução. 
 
As funções map, reduce e filter são implementadas em Python para ajudar os 
programadores a adaptarem os recursos do Lisp. 
 
Python foi criada pelo neerlandês Guido van Rossum. 
 
Utiliza tipagem dinâmica, não sendo necessário especificar o tipo da variável. 
 
É uma linguagem multiparadigma, abordando elementos de orientação a objetos e 
funcionais, entre outros. 
Respondido em 06/09/2019 14:35:52 
 
 
Explicação: 
Python é uma linguagem interpretada, e não compilada. 
 
 
 
 
 3a Questão 
 
O que será impresso pelo código seguinte? 
 
print("ABC")#DEF 
#print("GHI") 
print("#JK")#LM 
print("NO#PQ") 
 
 
ABCNO 
 
ABC#DEF#JK#LMNO#PQ 
 
ABCJKNOPQ 
 
ABCDEFGHIJKLMNOPQ 
 ABC#JKNO#PQ 
Respondido em 06/09/2019 14:36:00 
 
 
Explicação: 
Os únicos elementos que constituem comentários são: #DEF, #print("GHI"), #LM. Todos os 
demais serão impressos na ordem em que ocorrem no código. 
 
 
 
 
 4a Questão 
 
Qual das linguagens abaixo não é interpretada? 
 
 C 
 
Python 
 
Ruby 
 
Basic 
 
Lua 
Respondido em 06/09/2019 14:36:04 
 
 
Explicação: 
A resposta é letra e, pois todas as outras linguagens são interpretadas, ou seja, possuem 
um interpretador, e C é uma linguagem ¿compilada¿, possui um ¿compilador¿ para gerar o 
código. 
 
 
 
 
 5a Questão 
 
Python é uma linguagem que possui o paradigma funcional além de outros. 
No paradigma funcional puro podemos substituir a repetição por meio de: 
 
 
Condicional 
 
Parâmetro 
 
Função 
 Recursividade 
 
Variável 
Respondido em 06/09/2019 14:36:07 
 
 
Explicação: 
A repetição no paradigma funcional puro é realizada por meio da recursividade (letra d) . 
Variável e parâmetro não permitem repetição. 
Uma função é uma forte característica do paradigma funcional. 
Condicional existe no paradigma, mas é utilizado para decisões.6a Questão 
 
O que vai ser impresso no código abaixo? tupla= (1, 2, 3, 4) tupla.append( (5, 6, 7) ) 
print(len(tupla)) 
 
 
1 
 Vai gerar uma exceção 
 
2 
 
7 
 
5 
Respondido em 06/09/2019 14:36:10 
 
 
Explicação: Uma tupla não pode ser modificada. Vai gerar uma exceção. 
 
1a Questão 
 
Qual das instruções abaixo caracteriza o conceito de ¿tipagem dinâmica¿? 
 
 
2+3 = 5 
 
String x = ¿teste¿ 
 
String a = 3 
 i = 2 
 
int i = 5 
Respondido em 09/09/2019 09:13:04 
 
 
Explicação: 
A resposta correta é a letra a, dado que tipagem dinâmica é uma caracferística da 
linguagem, onde o próprio interpretador infere qual é o tipo da linguagem, no caso ele 
inferirá que i é uma variável do tipo inteiro. 
As letras b e c caracterizam tipagem estática, d é uma instrução de soma de dois números e 
a letra e, é uma instrução onde faltam as aspas para o tipo estático String 
 
 
 
 
 2a Questão 
 
A estrutura de decisão mais geral, em Python, é formada pelos seguintes comandos: 
 
 
if, then 
 
If, elif 
 
if, then, else 
 if, else, elif 
 
if , else 
Respondido em 09/09/2019 09:13:20 
 
 
Explicação: 
A estrutura de repetição mais geral em Python é formada por if, Else e Elif. 
 
 
 
 
 3a Questão 
 
Seja a string em Python: 
str = 'Python'; 
Qual o resultado da expressão: 
print(str[0]); 
 
 
y 
 
h 
 P 
 
t 
 
o 
Respondido em 09/09/2019 09:13:27 
 
 
Explicação: 
A resposta é P, pois em python as cadeias de caracteres começam com o primeiro 
elemento 0 (zero). 
 
 
 
 
 4a Questão 
 
Considere o seguinte código em Python: 
 
valor1 = input("digite um numero"); 
valor2 = input("digite um outro numero"); 
resultado = float((int(valor1) + int(valor2)))/2; 
print(resultado); 
 
Considerando que variáveis de valores recebam os inteiros 4 e 6, qual é o resultado final? 
 
 
5 
 5.0 
 
10 
 
10.0 
 
ERROR 
Respondido em 09/09/2019 09:13:39 
 
 
Explicação: 
O resultado da média dos números 4 e 6 será 5.0, o valor será do tipo float porque a função 
float() converte a soma dos dois inteiros para float. 
 
 
 
 
 5a Questão 
 
Um número imaginário como 3+4i pode ser representado em Python por qual dos 
seguintes tipos primitivos: 
 
 
array 
 
tuple 
 
float 
 complex 
 
int 
Respondido em 09/09/2019 09:13:58 
 
 
Explicação: 
Em Python existe o tipo primitivo ¿complex¿ que representa números complexos 
(ou também chamados imaginários) 
 
 
 
 
 6a Questão 
 
Qual o resultado da seguinte linha em Python: 
 print(int(¿1000¿) + 1000); 
 
 
ERROR 
 
1000 
 2000 
 
0 
 
10000 
Respondido em 09/09/2019 09:14:05 
 
 
Explicação: 
A resposta é 2000 pois a string ¿1000¿ será convertida para o número inteiro que poderá 
ser somado a 1000 e ter como resultado 2000. 
 
 
 
 
 7a Questão 
 
Python é uma linguagem utilizada em muitas áreas. Em uma delas, a Ciência dos Dados 
(Data Science) ele é muito utilizado. Qual das respostas abaixo seria um exemplo de 
utilização de Data Science? 
 
 
programar um videogame 
 
instalar uma rede segura 
 
construir um website 
 
 programar um aplicativo para Android 
 estudar quantitativamente comportamentos de usuários de uma rede social 
Respondido em 09/09/2019 09:14:46 
 
 
Explicação: 
A resposta correta é a letra b, porque seriam utilizados algoritmos matemáticos para 
estudo de tendências na rede social. 
As letras a, c e d são construções de aplicações computacionais que não precisam ter 
tratamento científico e a letra e é uma aplicação de infraestrutura. 
 
 
 
 
 8a Questão 
 
O que é necessário para se criar uma nova instância de uma classe? 
 
 Um construtor 
 
Um método qualquer 
 
Um método que retorna um valor 
 
Um objeto 
 
Uma classe 
Respondido em 09/09/2019 09:15:02 
 
 
Explicação: Todo objeto (instância) precisa de um construtor, mesmo que não seja definido 
e seja usado o construtor padrão 
 
1a Questão 
 
Considere o seguinte código em Python: 
valor = 7 
while (valor>3): 
 print(valor) 
 valor -= 1 
else: 
 ultimo_valor = valor 
 print(ultimo_valor) 
Qual é o resultado da variável ¿ultimo_valor¿, quando terminar o código? 
 
 
6 
 
5 
 
4 
 3 
 
7 
Respondido em 09/09/2019 09:24:57 
 
 
Explicação: 
A condição é imprimir enquanto o valor for maior que 3. Quando chegar ao valor 3, o 
código executará a instrução else, e terá o valor igual a 3. 
A resposta correta é a letra e. 
 
 
 
 
 2a Questão 
 
 Qual é a função do operador relacional ¿==¿ em Python? 
 
 
e lógico 
 igual 
 
diferente 
 
ou lógico 
 
atribuição 
Respondido em 09/09/2019 09:25:01 
 
 
Explicação: 
== signfica o operador lógico de igualdade em Python, neste caso a resposta é a letra a. 
 
 
 
 
 3a Questão 
 
Considere o seguinte conjunto de instruções em Python: 
frase = 'este pode ser um teste' 
contador = 0 
for letra in frase: 
 if letra == 'e': 
 contador = contador + 1 
print(contador) 
Qual é o resultado da variável contador após a realização das instruções? 
 
 
8 
 
1 
 6 
 
5 
 
4 
Respondido em 09/09/2019 09:25:05 
 
 
Explicação: 
O código conta a quantidade de letras ¿e¿ que aparecem na variável frase, neste caso a 
resposta é a letra b. 
 
 
 
 
 4a Questão 
 
O que será impresso, caso o código abaixo seja executado duas vezes, primeiramente com 
o valor 5 e depois com o valor 10? 
x = int(input()) 
if x>=5: 
 print(x+10) 
 if x<10: 
 print("menor que 10") 
else: 
 if x>8: 
 print("maior que 8") 
 else: 
 print("menor ou igual a 8") 
 
 
Primeiramente imprimirá 5 e na segunda execução 10 
 Primeiramente imprimirá 15 e o texto "menor que 10". Na segunda execução 
imprimirá 20 
 
Primeiramente imprimirá 15 e na segunda execução imprimirá além do número 
20, o texto "maior que 8" 
 
Primeiramente imprimirá 20 e na segunda execução 15 
 
Primeiramente imprimirá 15 e na segunda execução 20 
Respondido em 09/09/2019 09:25:09 
 
 
Explicação: 
Como ambos os valores são maiores ou iguais a 5, sempre executa o primeiro if, sendo 
impresso o valor + 10 (15 e 20), além da frase "é menor que 10" para 5, devido ao if (x<10) 
interno ao bloco. 
 
 
 
 
 5a Questão 
 
Analise as informações abaixo: 
I. Python é interpretado 
II. Python é orientado a objetos 
III. Python é interativo 
Estão corretas as afirmações: 
 
 
Somente I 
 
Somente I e II 
 I, II e III 
 
Somente I e III 
 
Somente II e III 
Respondido em 09/09/2019 09:25:13 
 
 
Explicação: Todas as afirmações estão corretas 
 
 
 
 
 6a Questão 
 
Considere o seguinte código em Python: 
for valor in range(2,13): 
 if valor%2 != 0: 
 print(valor) 
Qual é o último número a ser impresso na tela? 
 
 
10 
 11 
 
5 
 
2 
 
13 
Respondido em 09/09/2019 09:25:19 
 
 
Explicação: 
O último valor será 11, pois é o último ímpar da faixa coberta pela função range( ) 
 
1a Questão 
 
Em orientação a objetos, a característica que determina a possibilidade de um 
descendente alterar a funcionalidade de um método herdado é deominada: 
 
 
composição 
 
abstração 
 polimorfismo 
 
encapsulamento 
 
herançaRespondido em 09/09/2019 11:37:43 
 
 
Explicação: 
Através da herança é possível criar uma nova classe a partir de outra já existente, 
aproveitando suas características, mas algumas funcionalidades podem não ser adequadas, 
podendo ser modificadas através da sobrescrita destes métodos, segundo um processo 
denominado polimorfismo. 
 
 
 
 
 2a Questão 
 
Para construir uma função com três parâmetros em Python, como deve ser o cabeçalho? 
 
 
define func(a,b,c) 
 def func(a,b,c): 
 
define (a,b,c) 
 
define(a:b) 
 
def func(a,b,c) 
Respondido em 09/09/2019 11:37:48 
 
 
Explicação: 
A resposta é a letra d, que contém a sintaxe correta de definição de uma função em 
Python. 
 
 
 
 
 3a Questão 
 
 Ao definirmos uma classe Carro em Python, qual seria um possível método para ela? 
 
 
def somar(a,b): 
 
define plantar(lugar): 
 
define fechar(): 
 def acelerar(vel): 
 
define acender(valor): 
Respondido em 09/09/2019 11:37:53 
 
 
Explicação: 
A resposta é a letra b, porque um método é uma ação a ser executado pelo objeto, no 
caso, um carro possui como uma ação possível a aceleração, as letras c, d e e estão com 
uma palavra chave define que não é do python, e a letra a, somar dois parâmetros não se 
encaixa no objeto carro. 
 
 
 
 
 4a Questão 
 
Para acessar o atributo de um objeto Python, pode ser utilizado, alternativamente ao 
acesso direto, a seguinte função: 
 
 
expattr 
 
delattr 
 
hasattr 
 getattr 
 
setattr 
Respondido em 09/09/2019 11:37:56 
 
 
Explicação: 
Funções: getattr - retorna o valor do atributo, hasattr - testa se existe o atributo, setattr - 
seta o valor do atributo, delattr - remove o atributo, expattr - não existe. 
 
 
 
 
 5a Questão 
 
Considere o seguinte código em Python: 
class Complexo: 
 def __init__(self, parte_real, parte_imag): 
 self.r = parte_real 
 self.i = parte_imag 
Quando executarmos o seguinte comando: 
x = Complexo(3.0, -4.5) qual será o resultado de x.r? 
 
 
 
-1.5 
 
0 
 
-4.5 
 
-7.5 
 3.0 
Respondido em 09/09/2019 11:37:59 
 
 
Explicação: 
A resposta é a letra a, porque estaremos iniciando o objeto Complexo para a parte real 
(x.r) igual a 3.0 e a parte imaginária para -4.5 
 
 
 
 
 6a Questão 
 
Toda linguagem orientada a objetos permite a especificação de métodos construtores na 
classe, os quais são responsáveis pela inicialização do objeto recém-alocado na memória. 
Na linguagem Python este método recebe o seguinte nome: 
 
 __init__ 
 
constructor 
 
def 
 
self 
 
this 
Respondido em 09/09/2019 11:38:02 
 
 
Explicação: 
O método construtor é denominado __init__, sendo definido, como os demais métodos, 
através de def __init__(self, parâmetros...). Quanto aos demais, def serve para criar uma 
função ou método e self é o ponteiro de auto-referência implícito do Python. O this e o 
constructor não pertencem à sintaxe Python. 
 
1a Questão 
 
A função abaixo em Python ilustra um conceito muito importante no paradigma funcional. 
def fatorial(valor): 
 if valor == 0: 
 return 1 
 else: 
 return valor * fatorial(valor-1) 
Qual é esse conceito? 
 
 
Orientação a objetos 
 
Multiparadigmas 
 
Linguagens de script 
 Recursividade 
 
Tipagem dinâmica 
Respondido em 09/09/2019 11:47:53 
 
 
Explicação: 
A resposta é a letra c. A função implementa a função fatorial que chama a ela mesma no 
comando else. Esse conceito de uma função chamar ela mesma é definido 
por recursividade. 
 
 
 
 
 2a Questão 
 
Seja a classe definida como FormaGeométrica em Python, qual das opções abaixo poderia 
ser uma classe herdada dessa classe? 
 
 
class Animal(FormaGeometrica) 
 class Quadrado(FormaGeometrica) 
 
Nenhuma das opções está correta. 
 
class Carro(FormaGeometrica) 
 
class Pessoa(FormaGeometrica) 
Respondido em 09/09/2019 11:48:01 
 
 
Explicação: 
A resposta é class Quadrado(FormaGeometrica), classe Quadrado, porque uma subclasse 
herda as propriedades da superclasse, e como só existe uma única forma geométrica entre 
as opções ela é a resposta correta. 
 
 
 
 
 3a Questão 
 
Qual das opções abaixo contém conceitos apenas do paradigma orientado a objetos? 
 
 
atribuição, algoritmo 
 
 função, variável 
 método, classe, herança 
 
variável, estrutura condicional 
 
classe, estrutura de repetição 
Respondido em 09/09/2019 11:48:20 
 
 
Explicação: 
A resposta é a letra a, que possui três conceitos que se aplicam a orientação a objetos. 
 
 
 
 
 4a Questão 
 
Considere a seguinte função em Python: 
def func(a,b): 
 for valor in range(a,b): 
 print(valor) 
Qual o resultado da chamada func(1,3)? 
 
 1, 2 
 
2 
 
3 
 
1, 2, 3 
 
1 
Respondido em 09/09/2019 11:48:28 
 
 
Explicação: 
O resultado é a letra a. São passados dois parâmetros a e b para a função range( ), que 
exibirá uma faixa entre 1 e 3, menos o último valor (3, no caso) 
 
 
 
 
 5a Questão 
 
Qual é a saída do comando abaixo: >>> a='10' >>> print(a*2) 
 
 
Erro! 
 
20 
 1010 
 
100 
 
`20¿ 
Respondido em 09/09/2019 11:48:32 
 
 
Explicação: A variável a contém uma string. Usar o operador "*" vai repeti-la 
 
 
 
 
 6a Questão 
 
O que o código abaixo imprime? 
class Vendas: 
 def __init__(self, id): 
 self.id = id 
 id = 100 
val = Vendas(123) 
print (val.id) 
 
 
Nada. Vai dar pau 
 
100 
 123 
 
Id 
 
Nenhuma das anteriores 
Respondido em 09/09/2019 11:48:45 
 
 
Explicação: O construtor vai fazer a atribuição para a variável id do objeto val 
 
 
 
 
 7a Questão 
 
Seja uma superclasse veículo contendo um método acelerar(valor) com duas subclasses, 
carro (objeto C) e motocicleta (objeto M). 
Identifique abaixo uma chamada de método polimórfico em Python: 
 
 
Nenhuma das respostas anteriores está correta. 
 
A.acelerar.M 
 
C.M.acelerar(45) 
 
acelera(M) 
 C.acelerar(20) 
Respondido em 09/09/2019 11:48:50 
 
 
Explicação: 
Um método polimórfico é um método que se adapta ao objeto, no caso da questão, um 
véiculo pode acelerar, mas moto e carro são acelerados de modos diferentes. A resposta 
para a chamada correta em Python é a letra C.acelerar(20). 
 
 
 
 
 8a Questão 
 
Qual é o objetivo do comando super() na declaração abaixo? 
class Carro(Veiculo): 
 def __init__(self,vel,marca): 
 super().__init__(vel) 
 self.marca = marca 
 
 
Nenhuma das respostas anteriores está correta. 
 
Inicializa a variável vel. 
 
Uso de polimorfismo em Python. 
 
Apenas a sintaxe normal para a definição de uma classe simples em Python. 
 Permite que a classe herde o método da superclasse. 
Respondido em 09/09/2019 11:48:57 
 
 
Explicação: 
A resposta é letra a. É desse modo que se implementa a sobrecarga de métodos em 
Python, possibilitando extender a funcionalidade da superclasse para as classes filhas. 
 
1a Questão 
 
 Python é uma linguagem multiparadigma. Identifique, abaixo, o paradigma que não 
pertence à linguagem Python: 
 
 
Orientado a aspectos 
 
Estruturado 
 
Orientado a objetos 
 Polinomial 
 
Lógico 
Respondido em 06/09/2019 14:37:08 
 
 
Explicação: 
A resposta é a letra e, pois a, b, c e d são paradigmas da linguagem Python. 
Polinomialnão é paradigma de computação e nem pertence à linguagem Python. 
 
 
 
 
 2a Questão 
 
A seguir estão algumas características da linguagem Python. Qual das opções é FALSA? 
 
 
As funções map, reduce e filter são implementadas em Python para ajudar os 
programadores a adaptarem os recursos do Lisp. 
 
Python foi criada pelo neerlandês Guido van Rossum. 
 
Utiliza tipagem dinâmica, não sendo necessário especificar o tipo da variável. 
 É uma linguagem compilada, o que a torna mais rápida em tempo de execução. 
 
É uma linguagem multiparadigma, abordando elementos de orientação a objetos e 
funcionais, entre outros. 
Respondido em 06/09/2019 14:37:17 
 
 
Explicação: 
Python é uma linguagem interpretada, e não compilada. 
 
 
 
 
 3a Questão 
 
O que será impresso pelo código seguinte? 
 
print("ABC")#DEF 
#print("GHI") 
print("#JK")#LM 
print("NO#PQ") 
 
 
ABCJKNOPQ 
 
ABC#DEF#JK#LMNO#PQ 
 ABC#JKNO#PQ 
 
ABCDEFGHIJKLMNOPQ 
 
ABCNO 
Respondido em 06/09/2019 14:37:23 
 
 
Explicação: 
Os únicos elementos que constituem comentários são: #DEF, #print("GHI"), #LM. Todos os 
demais serão impressos na ordem em que ocorrem no código. 
 
 
 
 
 4a Questão 
 
Qual das linguagens abaixo não é interpretada? 
 
 
Python 
 
Ruby 
 
Basic 
 
Lua 
 C 
Respondido em 06/09/2019 14:37:26 
 
 
Explicação: 
A resposta é letra e, pois todas as outras linguagens são interpretadas, ou seja, possuem 
um interpretador, e C é uma linguagem ¿compilada¿, possui um ¿compilador¿ para gerar o 
código. 
 
 
 
 
 5a Questão 
 
Python é uma linguagem que possui o paradigma funcional além de outros. 
No paradigma funcional puro podemos substituir a repetição por meio de: 
 
 
Função 
 
Parâmetro 
 
Variável 
 Recursividade 
 
Condicional 
Respondido em 06/09/2019 14:37:33 
 
 
Explicação: 
A repetição no paradigma funcional puro é realizada por meio da recursividade (letra d) . 
Variável e parâmetro não permitem repetição. 
Uma função é uma forte característica do paradigma funcional. 
Condicional existe no paradigma, mas é utilizado para decisões. 
 
 
 
 
 6a Questão 
 
O que vai ser impresso no código abaixo? tupla= (1, 2, 3, 4) tupla.append( (5, 6, 7) ) 
print(len(tupla)) 
 
 
5 
 
7 
 
1 
 
2 
 Vai gerar uma exceção 
Respondido em 06/09/2019 14:37:38 
 
 
Explicação: Uma tupla não pode ser modificada. Vai gerar uma exceção. 
 
1a Questão 
 
Qual dos tipos abaixo não pertence a linguagem Python? 
 
 cordas 
 
dicionários 
 
inteiros 
 
tuplas 
 
listas 
Respondido em 09/09/2019 09:15:28 
 
 
Explicação: 
Cordas não é um tipo computacional e não faz parte dos tipos em Python. 
 
 
 
 
 2a Questão 
 
Considere a seguinte linha de comando: 
print(float(3) + 3); 
Qual é o resultado dessa expressão? 
 
 
6 
 6.0 
 
ERROR 
 
0 
 
3.0+3 
Respondido em 09/09/2019 09:15:35 
 
 
Explicação: 
A expressão float(3) será convertida para 3.0 e quando somada a 3 Python dará como 
resultado 6.0 porque o tipo float engloba o tipo inteiro. 
 
 
 
 
 3a Questão 
 
A função range( ), em python, permite gerar uma sequência de números. Considere a 
seguinte instrução: 
print(range(2,7)) 
Qual é o resultado deste comando? 
 
 
[2,3,4,5,6,7] 
 
[2,7] 
 
[2,5,7] 
 [2,3,4,5,6] 
 
[2,4,6] 
Respondido em 09/09/2019 09:15:44 
 
 
Explicação: 
A resposta correta é a letra b. 
O comando range( ) retorna uma faixa de números que se inicia pelo primeiro argumento e 
termina no último argumento menos um, ou seja nesse caso a faixa começa em 2 e 
terminará em 6. 
 
 
 
 
 4a Questão 
 
Considere o seguinte código em Python: 
a = 1 
b = 2 
c = a+b 
print ("o resultado",c); 
Suponha que este código esteja no arquivo teste.py, qual seria a chamada correta através 
do prompt do sistema operacional? 
 
 
py teste.py 
 python teste.py 
 
python teste 
 
p teste.py 
 
p teste 
Respondido em 09/09/2019 09:17:46 
 
 
Explicação: 
A resposta é a letra d, pois um programa em python é chamado usando o comando python 
e o nome do arquivo com a terminação .py. 
As outras chamadas não são funcionais. 
 
 
 
 
 5a Questão 
 
Seja a string em Python: 
str = 'Python'; 
Qual o resultado da expressão: 
print(str[0]); 
 
 P 
 
t 
 
o 
 
y 
 
h 
Respondido em 09/09/2019 09:18:01 
 
 
Explicação: 
A resposta é P, pois em python as cadeias de caracteres começam com o primeiro 
elemento 0 (zero). 
 
 
 
 
 6a Questão 
 
Considere o seguinte código em Python: 
 
valor1 = input("digite um numero"); 
valor2 = input("digite um outro numero"); 
resultado = float((int(valor1) + int(valor2)))/2; 
print(resultado); 
 
Considerando que variáveis de valores recebam os inteiros 4 e 6, qual é o resultado final? 
 
 
10.0 
 
ERROR 
 5.0 
 
10 
 
5 
Respondido em 09/09/2019 09:18:14 
 
 
Explicação: 
O resultado da média dos números 4 e 6 será 5.0, o valor será do tipo float porque a função 
float() converte a soma dos dois inteiros para float. 
 
 
 
 
 7a Questão 
 
Qual das instruções abaixo caracteriza o conceito de ¿tipagem dinâmica¿? 
 
 
String a = 3 
 
String x = ¿teste¿ 
 
int i = 5 
 
2+3 = 5 
 i = 2 
Respondido em 09/09/2019 09:18:37 
 
 
Explicação: 
A resposta correta é a letra a, dado que tipagem dinâmica é uma caracferística da 
linguagem, onde o próprio interpretador infere qual é o tipo da linguagem, no caso ele 
inferirá que i é uma variável do tipo inteiro. 
As letras b e c caracterizam tipagem estática, d é uma instrução de soma de dois números e 
a letra e, é uma instrução onde faltam as aspas para o tipo estático String 
 
 
 
 
 8a Questão 
 
Python é uma linguagem utilizada em muitas áreas. Em uma delas, a Ciência dos Dados 
(Data Science) ele é muito utilizado. Qual das respostas abaixo seria um exemplo de 
utilização de Data Science? 
 
 
instalar uma rede segura 
 
construir um website 
 
 programar um aplicativo para Android 
 
programar um videogame 
 estudar quantitativamente comportamentos de usuários de uma rede social 
Respondido em 09/09/2019 09:18:49 
 
 
Explicação: 
A resposta correta é a letra b, porque seriam utilizados algoritmos matemáticos para 
estudo de tendências na rede social. 
As letras a, c e d são construções de aplicações computacionais que não precisam ter 
tratamento científico e a letra e é uma aplicação de infraestrutura. 
 
1a Questão 
 
Considere o seguinte código em Python: 
valor = 7 
while (valor>3): 
 print(valor) 
 valor -= 1 
else: 
 ultimo_valor = valor 
 print(ultimo_valor) 
Qual é o resultado da variável ¿ultimo_valor¿, quando terminar o código? 
 
 
4 
 
7 
 3 
 
5 
 
6 
Respondido em 09/09/2019 09:25:32 
 
 
Explicação: 
A condição é imprimir enquanto o valor for maior que 3. Quando chegar ao valor 3, o 
código executará a instrução else, e terá o valor igual a 3. 
A resposta correta é a letra e. 
 
 
 
 
 2a Questão 
 
 Qual é a função do operador relacional ¿==¿ em Python? 
 
 
diferente 
 igual 
 
atribuição 
 
e lógico 
 
ou lógico 
Respondido em 09/09/2019 09:25:35 
 
 
Explicação: 
== signfica o operador lógico de igualdade em Python, nestecaso a resposta é a letra a. 
 
 
 
 
 3a Questão 
 
Considere o seguinte conjunto de instruções em Python: 
frase = 'este pode ser um teste' 
contador = 0 
for letra in frase: 
 if letra == 'e': 
 contador = contador + 1 
print(contador) 
Qual é o resultado da variável contador após a realização das instruções? 
 
 
1 
 6 
 
8 
 
4 
 
5 
Respondido em 09/09/2019 09:25:39 
 
 
Explicação: 
O código conta a quantidade de letras ¿e¿ que aparecem na variável frase, neste caso a 
resposta é a letra b. 
 
 
 
 
 4a Questão 
 
O que será impresso, caso o código abaixo seja executado duas vezes, primeiramente com 
o valor 5 e depois com o valor 10? 
x = int(input()) 
if x>=5: 
 print(x+10) 
 if x<10: 
 print("menor que 10") 
else: 
 if x>8: 
 print("maior que 8") 
 else: 
 print("menor ou igual a 8") 
 
 
Primeiramente imprimirá 5 e na segunda execução 10 
 
Primeiramente imprimirá 15 e na segunda execução imprimirá além do número 
20, o texto "maior que 8" 
 Primeiramente imprimirá 15 e o texto "menor que 10". Na segunda execução 
imprimirá 20 
 
Primeiramente imprimirá 20 e na segunda execução 15 
 
Primeiramente imprimirá 15 e na segunda execução 20 
Respondido em 09/09/2019 09:25:43 
 
 
Explicação: 
Como ambos os valores são maiores ou iguais a 5, sempre executa o primeiro if, sendo 
impresso o valor + 10 (15 e 20), além da frase "é menor que 10" para 5, devido ao if (x<10) 
interno ao bloco. 
 
 
 
 
 5a Questão 
 
Analise as informações abaixo: 
I. Python é interpretado 
II. Python é orientado a objetos 
III. Python é interativo 
Estão corretas as afirmações: 
 
 
Somente I e III 
 
Somente II e III 
 
Somente I e II 
 
Somente I 
 I, II e III 
Respondido em 09/09/2019 09:25:47 
 
 
Explicação: Todas as afirmações estão corretas 
 
 
 
 
 6a Questão 
 
Considere o seguinte código em Python: 
for valor in range(2,13): 
 if valor%2 != 0: 
 print(valor) 
Qual é o último número a ser impresso na tela? 
 
 11 
 
2 
 
10 
 
5 
 
13 
Respondido em 09/09/2019 09:25:50 
 
 
Explicação: 
O último valor será 11, pois é o último ímpar da faixa coberta pela função range( ) 
 
1a Questão 
 
Em orientação a objetos, a característica que determina a possibilidade de um 
descendente alterar a funcionalidade de um método herdado é deominada: 
 
 polimorfismo 
 
herança 
 
composição 
 
abstração 
 
encapsulamento 
Respondido em 09/09/2019 11:38:17 
 
 
Explicação: 
Através da herança é possível criar uma nova classe a partir de outra já existente, 
aproveitando suas características, mas algumas funcionalidades podem não ser adequadas, 
podendo ser modificadas através da sobrescrita destes métodos, segundo um processo 
denominado polimorfismo. 
 
 
 
 
 2a Questão 
 
Para construir uma função com três parâmetros em Python, como deve ser o cabeçalho? 
 
 
define (a,b,c) 
 
define(a:b) 
 
def func(a,b,c) 
 def func(a,b,c): 
 
define func(a,b,c) 
Respondido em 09/09/2019 11:38:19 
 
 
Explicação: 
A resposta é a letra d, que contém a sintaxe correta de definição de uma função em 
Python. 
 
 
 
 
 3a Questão 
 
 Ao definirmos uma classe Carro em Python, qual seria um possível método para ela? 
 
 
define fechar(): 
 
define acender(valor): 
 def acelerar(vel): 
 
define plantar(lugar): 
 
def somar(a,b): 
Respondido em 09/09/2019 11:38:24 
 
 
Explicação: 
A resposta é a letra b, porque um método é uma ação a ser executado pelo objeto, no 
caso, um carro possui como uma ação possível a aceleração, as letras c, d e e estão com 
uma palavra chave define que não é do python, e a letra a, somar dois parâmetros não se 
encaixa no objeto carro. 
 
 
 
 
 4a Questão 
 
Para acessar o atributo de um objeto Python, pode ser utilizado, alternativamente ao 
acesso direto, a seguinte função: 
 
 
delattr 
 
hasattr 
 getattr 
 
setattr 
 
expattr 
Respondido em 09/09/2019 11:38:26 
 
 
Explicação: 
Funções: getattr - retorna o valor do atributo, hasattr - testa se existe o atributo, setattr - 
seta o valor do atributo, delattr - remove o atributo, expattr - não existe. 
 
 
 
 
 5a Questão 
 
Considere o seguinte código em Python: 
class Complexo: 
 def __init__(self, parte_real, parte_imag): 
 self.r = parte_real 
 self.i = parte_imag 
Quando executarmos o seguinte comando: 
x = Complexo(3.0, -4.5) qual será o resultado de x.r? 
 
 
 3.0 
 
-4.5 
 
0 
 
-1.5 
 
-7.5 
Respondido em 09/09/2019 11:38:30 
 
 
Explicação: 
A resposta é a letra a, porque estaremos iniciando o objeto Complexo para a parte real 
(x.r) igual a 3.0 e a parte imaginária para -4.5 
 
 
 
 
 6a Questão 
 
Toda linguagem orientada a objetos permite a especificação de métodos construtores na 
classe, os quais são responsáveis pela inicialização do objeto recém-alocado na memória. 
Na linguagem Python este método recebe o seguinte nome: 
 
 
this 
 
def 
 
self 
 __init__ 
 
constructor 
Respondido em 09/09/2019 11:38:33 
 
 
Explicação: 
O método construtor é denominado __init__, sendo definido, como os demais métodos, 
através de def __init__(self, parâmetros...). Quanto aos demais, def serve para criar uma 
função ou método e self é o ponteiro de auto-referência implícito do Python. O this e o 
constructor não pertencem à sintaxe Python. 
 
1a Questão 
 
Qual dos comandos abaixo define uma relação de herança em Python? 
 
 class Carro(Veiculo) : 
 
Carro is Veiculo 
 
class Carro is Veiculo 
 
class Carro extends Veiculo 
 
class Carro inherits Veiculo 
Respondido em 09/09/2019 11:49:21 
 
 
Explicação: 
A resposta é a letra a, que tem a sintaxe correta para definir, em Python, que a classe Carro 
é uma extensão da classe Veiculo. 
 
 
 
 
 2a Questão 
 
Qual a função do método __str__ em Python? 
 
 Converter um objeto para ser apresentado como String 
 
Converter um float em String 
 
Nenhuma das anteriores está correta. 
 
Identificar uma string especifica dentro de um texto 
 
Transformar um inteiro em uma String 
Respondido em 09/09/2019 11:49:29 
 
 
Explicação: 
O método __str__ é equivalente ao método toString em Java, por exemplo. É a forma de 
representar um objeto como uma String. A resposta certa é "Converter um objeto para ser 
apresentado como String". 
 
 
 
 
 3a Questão 
 
Considere a seguinte definição da classe fração: 
class Fracao: 
 def __init__(self,num,den): 
 self.num = num 
 self.den = den 
Qual seria um possivel cabeçalho para um método de multiplicar duas frações? 
 
 
Nenhuma das anteriores está correta. 
 def __mul__(self,fracao): 
 
def mul(fracao1, fracao2) 
 
f.multiplicar(f) 
 
fracao.multiplicar(f1) 
Respondido em 09/09/2019 11:49:34 
 
 
Explicação: 
A resposta é: 
def __mul__(self,fracao): 
onde é passado como parâmetro um objeto da classe Fracao de onde serão retirados o 
numerador e o denominador. 
Abaixo o código desse método: 
def mul(self,fracao): 
 return Fracao(self.num*fracao.num, 
 self.den*fracao.den) 
 
 
 
 
 4a Questão 
 
O que o código abaixo imprime? 
class Vendas: 
 def __init__(self, id): 
 self.id = id 
 id = 100val = Vendas(123) 
print (val.id) 
 
 
Nenhuma das anteriores 
 
Nada. Vai dar pau 
 
Id 
 123 
 
100 
Respondido em 09/09/2019 11:49:38 
 
 
Explicação: O construtor vai fazer a atribuição para a variável id do objeto val 
 
 
 
 
 5a Questão 
 
Seja uma superclasse veículo contendo um método acelerar(valor) com duas subclasses, 
carro (objeto C) e motocicleta (objeto M). 
Identifique abaixo uma chamada de método polimórfico em Python: 
 
 
A.acelerar.M 
 
Nenhuma das respostas anteriores está correta. 
 
C.M.acelerar(45) 
 C.acelerar(20) 
 
acelera(M) 
Respondido em 09/09/2019 11:49:41 
 
 
Explicação: 
Um método polimórfico é um método que se adapta ao objeto, no caso da questão, um 
véiculo pode acelerar, mas moto e carro são acelerados de modos diferentes. A resposta 
para a chamada correta em Python é a letra C.acelerar(20). 
 
 
 
 
 6a Questão 
 
Qual é o objetivo do comando super() na declaração abaixo? 
class Carro(Veiculo): 
 def __init__(self,vel,marca): 
 super().__init__(vel) 
 self.marca = marca 
 
 Permite que a classe herde o método da superclasse. 
 
Nenhuma das respostas anteriores está correta. 
 
Inicializa a variável vel. 
 
Uso de polimorfismo em Python. 
 
Apenas a sintaxe normal para a definição de uma classe simples em Python. 
Respondido em 09/09/2019 11:49:49 
 
 
Explicação: 
A resposta é letra a. É desse modo que se implementa a sobrecarga de métodos em 
Python, possibilitando extender a funcionalidade da superclasse para as classes filhas. 
 
 
 
 
 7a Questão 
 
Considere a seguinte função em Python: 
def func(a,b): 
 for valor in range(a,b): 
 print(valor) 
Qual o resultado da chamada func(1,3)? 
 
 
3 
 
1 
 
1, 2, 3 
 
2 
 1, 2 
Respondido em 09/09/2019 11:49:57 
 
 
Explicação: 
O resultado é a letra a. São passados dois parâmetros a e b para a função range( ), que 
exibirá uma faixa entre 1 e 3, menos o último valor (3, no caso) 
 
 
 
 
 8a Questão 
 
Qual é a saída do comando abaixo: >>> a='10' >>> print(a*2) 
 
 
20 
 
`20¿ 
 1010 
 
100 
 
Erro! 
Respondido em 09/09/2019 11:50:00 
 
 
Explicação: A variável a contém uma string. Usar o operador "*" vai repeti-la

Continue navegando