Python
Professor Victor Dalton
Professor Victor Dalton
Eng. Computação IME/ Informática para Concursos
@profvictordalton
Facebook.com/professorvictordalton
Youtube: youtube.com/victordalton
[ Lógica de programação ]
[ Linguagens de programação ]
Lógica de • Pseudocódigo
programação
[ Sumário ]
Introdução
Tipagem de dados
Coleções
Manipulação de listas
Ranges
Manipulação de strings
Operadores
• Numéricos
• Booleanos
• Sequenciais
Estruturas de controle
• Estruturas de decisão
• Estruturas de repetição
Questões de concurso
https://repl.it/languages/python3
Linguagem de Programação
Python
[ Introdução – Python ]
Linguagem interpretada
• Código-fonte é compilado em bytecode
• Bytecode é interpretado pela máquina virtual
• Instruções são executadas uma a uma, iterativamente
Bytecode
• Portável
• Inteligível
[ Código-fonte - Indentação – Python ]
[ CESPE - 2018 - Polícia Federal - Agente de Polícia Federal ]
Considere o programa a seguir, na linguagem Python.
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resultado.
If():
for():
while():
Todas essas três funções precisam dos dois pontos :
[ Tipagem ]
Características de tipagem das variáveis
Python
Tipagem O tipo de variável pode mudar
dinâmica ao longo do programa
Não pode fazer operações com
Tipagem forte
tipos incompatíveis
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Tipos de dados ]
Tipo Descrição Exemplos
Inclui tipos numéricos como inteiros, reais, imaginários,
Números 123, 3.1415, 1+2j, 0x9ff, True, False
hexadecimais, booleanos, entre outros.
Strings Cadeias de caracteres. “laranja”, “maçã”, “José1”
[1, 2, “João”], [“login”,”senha”],
Listas Sequência mutável de objetos de tamanho variável.
[234, [12.5, “spam”], 9+3j]
Estrutura de dados de mapeamento de uma chave em um {“laranja” : 5.00, “maçã” : 7.40}
Dicionários
valor. {“love” : “amor”, “book” : “livro”}
Sequência imutável de objetos. Seus valores não podem
Tuplas (1, “gato”, 15.45)
mudar.
Arquivos Referência para o conteúdo de arquivos em disco open(‘C:\meuarquivo.txt’)
Sequência não ordenada de objetos únicos. O conjunto em si é {‘a’, ‘b’, ‘c’}
Conjuntos
mutável, mas seus elementos são imutáveis. {1, 12.3, 45, “New York”}
None Representa o nada. Equivalente ao null em outras linguagens. None
Outros Funções, módulos e classes também são tipos.
[ Coleções ]
Pode substituir os valores Pode acrescentar/remover Forma de indexação dos
Coleção
dos elementos? elementos? elementos
Lista Sim Sim Inteiro
Tupla Não Não Inteiro
Dicionário Sim Sim String
[ Manipulação de listas ]
[ Atribuições múltiplas ]
[ IF-MT - 2018 - IF-MT - Informática ]
Considere o seguinte fragmento de código fonte, escrito em linguagem python:
a=3
b=a*2
a, b = b, a
Após a execução de todos os comandos, qual é o resultado apresentado pelo comando abaixo?
print(a)
(a) 3
(b) 6
(c) 36
(d) 63
(e) a
[ Ranges ]
[ VUNESP - 2017 - TJM-SP - Técnico de Comunicação e Processamento de Dados ]
Considere o seguinte código no Python 3.5:
x = range(10)
O tipo da variável “x”, após a execução do código, é
(a) classe ‘set’.
(b) classe ‘tuple’.
(c) classe ‘list’.
(d) classe ‘range’.
(e) classe ‘iter’.
[ FGV - 2018 - AL-RO - Analista Legislativo - Infraestrutura de Redes e Comunicação ]
Analise o código Python a seguir.
Assinale a opção que indica o número de valores printados na execução desse código.
(a) Zero Lembrando a assinatura do método range:
O 1º parâmetro do range é start = 0
(b) Um O 2º parâmetro é o stop = 4
O 3º parâmetro é o step = -1 (step = incremento)
(c) Dois
Com esses parâmetros start e incremento, a sequência seguiria o seguinte caminho: [0, -1, -2, -3, -4, -5, ...]
(d) Quatro Desse jeito não vai chegar nunca no stop = 4. Se fosse uma outra linguagem de programação poderíamos entrar aqui
em um loop infinito com consequente estouro de memória. Mas a função range do Python é “inteligente” e nesse caso
o range retornado é uma sequência vazia pela impossibilidade de chegar no stop = 4 partindo do start = 0 e
decrementando de -1 em -1.
(e) Cinco
Desta forma, o for não realiza nenhum loop e consequentemente o print nunca é chamado.
Resposta: A
[ Manipulação de strings ]
Declaração
Operações
[ Manipulação de strings ]
Funções len, find e split
Strings são imutáveis!
Funções swapcase, strip e replace .lstrip() Remove caracteres a esquerda(left)
.rstrip() Remove caracteres a direita (right)
[ CESPE - 2018 - Polícia Federal - Perito Criminal Federal - Conhecimentos Básicos - Todas as Áreas ]
Considere os seguintes comandos na programação em Python.
Esses comandos, quando executados, apresentarão o resultado a seguir.
A função .strip() em python é equivalente a função trim do PHP e javascript.
a = " Hello, World! " #Observe que há espaço em branco no inicio e no fim
print(a.strip()) #Irá imprimir Hello, World , sem espaços em brancos no inicio e no final do string.
[ Operadores numéricos ]
Operação Descrição
X +Y Adição
X -Y Subtração
X *Y Multiplicação
X /Y Divisão
X ** Y Exponenciação
[ Operadores booleanos ]
Operação Descrição
X <Y Menor
X <= Y Menor ou igual
X >Y Maior
X >= Y Maior ou igual
X == Y Igual
X != Y Diferente
X is Y Testa se X e Y são o mesmo objeto
X is not Y Testa se X e Y não são o mesmo objeto
X <Y < Z Comparação tripla
not X Inverte o valor lógico de X
[ Operadores sequenciais ]
Operação Descrição
X in S Verifica se o elemento X pertence à sequência S
X not in S Verifica se o elemento X não pertence à sequência S
S1 + S2 Concatena as sequências S1 e S2
n*S Repete n vezes a sequência S
S[i:j] Fatia a sequência S entre os índices i e j
len(S) Retorna o tamanho de S
min(S) Retorna o mínimo elemento de S
max(S) Retorna o máximo elemento de S
for X in S Percorre todos os elementos de S armazenando o
elemento corrente em X
del S[i] Deleta o elemento localizado no índice i
[ Operadores sequenciais – Iteração ]
[ Estruturas de controle ]
[ Estruturas de decisão – if, if-else, if-elif-else ]
[ Estruturas de decisão – if, if-else, if-elif-else ]
if
if-elif-else
if-else
[ Estruturas de controle ]
[ Estruturas de repetição – for, for-else, while, while-else ]
Estrutura de repetição Finalidade
for Executar repetidamente por um número determinado de vezes
for-else Igual o for só que com um bloco else a ser executado obrigatoriamente
após os loops
while Executar repetidamente enquanto uma condição for verdadeira
while-else Igual o while só que com um bloco else a ser executado obrigatoriamente
após os loops
[ Estrutura de repetição – for ]
for
String é uma coleção de caracteres. Pode ser percorrida com um for.
[ Estrutura de repetição – for ]
Usando um for para percorrer um range
Palavra reservada break
Palavra reservada continue
[ Estrutura de repetição – for-else ]
for-else
[ CESPE - 2018 - Polícia Federal - Agente de Polícia Federal ]
Considere o programa a seguir, na linguagem Python.
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resultado.
PF
[ FGV - 2018 - AL-RO - Analista Legislativo - Análise e Desenvolvimento de Sistemas ]
Analise o código Python a seguir.
k if L1[k] in L2[-5:-2] : print(L1[k])
O comando de execução desse código produz
(a) erro de sintaxe.
(b) erro de execução.
(c) a exibição do número 12 somente.
(d) a exibição de dois números, 14 e 12, nessa ordem.
(e) a exibição de três números, 18, 12 e 10, nessa ordem.
[ Estrutura de repetição – while ]
while
[ Estrutura de repetição – while-else ]
while-else
[ Funções ]
O que são Estrutura
• Módulos de código reutilizáveis • Palavra reservada def
• Nome
• Corpo
• Retorno
[ Classes ]
O que são
• Template/modelo/gabarito para
criação de objetos
Estrutura
• Atributos
• Construtor
• Métodos
[ CESPE - 2010 - INMETRO - Pesquisador - Desenvolvimento de Sistemas ]
Assinale a opção que apresenta a sequência correta de números impressos no console de um interpretador Python durante a execução
dos comandos acima.
(a) 1, 1, 2, 3, 5, 8 a
b
(b) 2, 2, 4, 6
(c) 2, 3, 6
(d) 3, 3, 6, 10, 17, 28
(e) 3, 6, 10, 17, 28
[ FCC - 2014 - TRT - 13ª Região (PB) - Analista Judiciário - Tecnologia da Informação ]
Considere o código abaixo, digitado em Python.
a
b
No final da execução do código, o último valor armazenado nas variáveis a e b serão, respectivamente,
(a) 13 e 21
(b) 8 e 13
(c) 5 e 10
(d) 13 e 20
(e) 8 e 10
[ FGV - 2018 - AL-RO - Analista Legislativo - Banco de Dados ]
Analise o código Python a seguir.
Assinale o que acontece com esse código quando o comando Run Module (F5) é acionado na interface IDLE
(Python GUI).
(a) Os valores [1, 2, 3, 4, 5, 6] são exibidos.
(b) Os valores [1, 2, 2, 4, 8, 32] são exibidos.
(c) Os valores [1, 1, 2, 6, 24, 120] são exibidos
(d) Um erro de compilação
(e) Um erro de execução
[ IF-MT - 2018 - IF-MT - Informática ]
Considere o seguinte fragmento de código fonte escrito na linguagem python:
Após a execução de todos esses códigos, qual é o valor a ser mostrado mediante o comando abaixo?
print(b)
(a) 0
(b) 1
(c) 3
(d) 6
(e) 9
[ PaqTcPB - 2012 - UEPB - Técnico em Informática - Programador ]
Considere o trecho do programa Python abaixo. Qual o valor impresso ao executarmos o programa?
(a) 25
(b) 15
(c) 5
(d) 10
(e) 20
Python – Resumo Direcionado
Professor Victor Dalton
[Python - Características]
[ Manipulação de listas ]
[ Ranges ]
[ Estruturas de decisão – if, if-else, if-elif-else ]
if
if-elif-else
if-else
[ Estrutura de repetição – for ]
for
String é uma coleção de caracteres. Pode ser percorrida com um for.
[ CESPE - 2018 - Polícia Federal - Agente de Polícia Federal ]
Considere o programa a seguir, na linguagem Python.
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resultado.
PF