Algoritmos de Programação - Python Aula1 e Aula2
Algoritmos de Programação - Python Aula1 e Aula2
Programação
Introdução ao
PYTHON
Bibliografia:
Python para Desenvolvedores, 2ªed.
BORGES. Luiz Eduardo
O’REILLY, Media, Python Fluente
Características da Disciplina
40 horas
4h horas de avaliações
duas avaliações e uma final
4h revisões
32h conteúdo e práticas
O que é um Algoritmo
Para CORMEN & LEISERSON, um
algoritmo é qualquer procedimento
computacional bem definido que toma algum
valor ou conjunto de valores como entrada e
produz algum valor ou conjunto de valores de
saída. Portanto, um algoritmo é uma
sequencia de passos computacionais que
transformam a entrada na saída, ou ainda,
uma ferramenta para resolver um
problema computacional bem especificado.
Prefácio
As linguagens dinâmicas eram vistas no
passado apenas como linguagens script,
usadas para automatizar pequenas tarefas,
porém, com o passar do tempo, elas
cresceram, amadureceram e conquistaram
seu espaço no mercado, a ponto de
chamar a atenção dos grandes
fornecedores de tecnologia.
Introdução
Python
É uma linguagem de altíssimo nível (em
inglês, Very High Level Language) orientada
a objeto, de tipagem dinâmica e forte,
interpretada e interativa.
Para LUTZ & ASCHER, o Python é uma
linguagem de propósito geral, frequentemente
aplicada em funções de script.
Características
O Python possui uma sintaxe clara e concisa,
que favorece a legibilidade do código fonte,
tornando a linguagem mais produtiva.
Python é um software de código aberto
com licença compatível com a General
Public License (GPL), porém menos
restritiva, permitindo que o Python seja
inclusive incorporado em produtos
proprietários. A especificação da linguagem
é mantida pela Python Software Foundation
(PSF).
Histórico
A linguagem foi criada em
1990 por Guido van
Rossum, no Instituto
Nacional de Pesquisa para
Matemática e Ciência da
Computação da Holanda (CWI)
e tinha originalmente foco em
usuários como físicos e
engenheiros. O Python foi
concebido a partir de outra
linguagem existente na
época, chamada ABC.
Cultura
( )
Sintaxe
Os arquivos .py
Os códigos são armazenados em arquivos
com a extensão .PY e são “executáveis” a
partir de um duplo clique, uma vez que o
interpretador PYTHON é chamado assim que
o SO identifica o tipo de arquivo ativado.
É possível também, ativar o código PYTHON
estando no COMMAND do Windows e digitar
diretamente no PROMPT o nome do
arquivo .PY desejado.
Tipagem dinâmica
Python utiliza tipagem dinâmica, o que significa que o
tipo de uma variável é inferido pelo interpretador em
tempo de execução (isto é conhecido como Duck
Typing). No momento em que uma variável é
criada através de atribuição, o interpretador define
um tipo para a variável, com as operações que podem
ser aplicadas.
A tipagem do Python é forte, ou seja, o interpretador
verifica se as operações são válidas e não faz coerções
automáticas entre tipos incompatíveis. Para realizar
a operação entre tipos não compatíveis, é
necessário converter explicitamente o tipo da
variável ou variáveis antes da operação.
Tipos Simples de Dados
Numéricos
Inteiros
Os tipos numéricos INTEIROS usados em contagens
e quaisquer valores que não necessitem de
decimais. Função de conversão é a int()
Ex: >>> a = 10
b = int(“20”) #a string foi
convertida em inteiro
Reais
Os tipos REAIS são comumente usados em cálculos
diversos. Função de conversão é a float()
Tipos Simples de Dados
Textuais
String
São do tipo TEXTO, contendo em seu corpo um índice de
caracteres acessível por contagem crescente e
decrescente
Ex:
Índice decrescente -7 -6 -5 -4 -3 -2 -1
String com 7 caracteres T E C I N F O
Índice decrescente 0 1 2 3 4 5 6
>>> a = “TECINFO”
>>> a[0]
‘T’
>>> a[-1]
‘O’
Comandos Básicos de Entrada e Saída
O comando print()
Este é o principal comando de saída de dados do console
PYTHON, serve para imprimir os conteúdos das variáveis e
dados diversos para feedback ao desenvolvedor.
Ex:
>>> a = "Professor"
>>> print("Bom dia! " + a)
Bom dia! Professor
Operação Operador
Exponenciaç **
ão
Parte inteira //
módulo %
Operações Básicas e Variáveis
Operações matemáticas básicas
>>> a = 3 #nome criado
>>> b = 4
>>> a + 1, a – 1 #adição, subtração
(4, 2)
>>> b * 3, b / 2 #multiplicação, divisão
(12, 2.0)
>>> a % 2, b ** 2 #mód(resto), potenciação
(1, 16)
>>> 2 + 4.0, 2.0 ** b # conversões
(6.0, 16.0)
Controle de fluxo
É muito comum em um programa que certos
conjuntos de instruções sejam executados de
forma condicional, em casos como validar
entradas de dados, por exemplo.
Sintaxe:
Controle de fluxo
Uma Estrutura de Condição, como o próprio
nome já diz, verifica a condição dos
argumentos passados e, executa um comando
caso a condição seja verdadeira, como se
pode ver no algorítimo abaixo:
SE condição ENTÃO
comando
Toda condição retornará um valor entre
True/False, definindo o comportamento da
estrutura, se ativará o comando caso seja
True, senão, o comando será ignorado.
Controle de fluxo
Para entendermos melhor como se dá o
processo de teste de uma condicional, temos
os operadores condicionais, a seguir:
Operado Tipo Valor
r
== Igualdade Verifica a igualdade entre dois valores.
if soma > 0:
print("Maior que Zero.“)
Controle de fluxo
Estrutura Condicional Composta executa um
comando quando a condição for verdadeira e
outra condição quando for falsa:
if soma > 0:
print("Maior que Zero.“)
else:
print("Menor que Zero.“)
Controle de fluxo
Estruturas Codicionais Aninhadas são várias
condições em cascatas, ou seja, um IF dentro
de outro IF.
if soma > 0:
print("Maior que Zero.“)
elif soma = 0:
print("Igual a Zero.“)
else:
print("Menor que Zero.“)
Controle de fluxo
Expressão Condicional.
>>> count = 0
>>> while count <= 5:
print(count)
count += 1
0
1
2
3
4
O laço while
Exemplo com break.
OBS:
>>> count = 0
>>> while count <= 5: continue e break,
respectivamente:
print(count)
count += 1 Para iniciar imediatamente a
if count > 3: próxima volta do loop, use o
comando continue.
break
Para encerrar imediatamente o
0 loop, use o comando break
1
2
Esquisitices...
for-else ? while-else ?
Então, é isso mesmo!
# #
# while # for
# #
count = 0 for i in range(5):
while count <= 5: print(i)
print(count) else:
count += 1 print('após iteração')
else:
print('após
iteração')
É bem docinho....
Limpando a tela pelo terminal do DOS
Já vimos que não há um comando clear para limpar
a tela do shell, no entanto, esse recurso pode ser
feito quando usamos nossas aplicações python
diretamente no CMD do windows, bastando para
isso, usar o código abaixo:
import os
os.system('cls' if os.name == 'nt' else 'clear')