python para desenvolvedores

55
Linguagens de Programação Linguagem Python

Upload: wellington-oliveira

Post on 24-May-2015

377 views

Category:

Education


1 download

DESCRIPTION

Neste slide abordo o a linguagem Python baseado no livro Python para Programadores do autor Luiz Eduardo Borges

TRANSCRIPT

Page 1: Python para Desenvolvedores

Linguagens de Programação

Linguagem Python

Page 2: Python para Desenvolvedores

Python

• O Python possui uma sintaxe clara e concisa;

• O Python é um software de código aberto;

• A linguagem é interpretada através de bytecode pela máquina virtual Python, tornando o código portável;

• Pode ser usado como script.

Page 3: Python para Desenvolvedores

Exemplo

Page 4: Python para Desenvolvedores

Tipagem dinâmica

• O Python é tipado;

• A tipagem é feita durante o processo de execução (Duck Typing);

Page 5: Python para Desenvolvedores

Compilação e Interpretação

Page 6: Python para Desenvolvedores

Interface

• Modo de interação;

• Eric.

• PyDev (plug-in para a IDE Eclipse).

• PyScripter.

• SPE (Stani's Python Editor).

• SciTE.

• Notepad++.

Page 7: Python para Desenvolvedores

Interface

• PyCrust (gráfico).

• Ipython (texto).

• Py2exe (apenas para Windows).

• cx_Freeze (portável).

Page 8: Python para Desenvolvedores

Sintaxe

• Constituido por linhas;

• Usa-se # para comentário;

• A endentação do código determina o bloco de instruções;

Page 9: Python para Desenvolvedores

Endentação

• xx.

Page 10: Python para Desenvolvedores

Exemplo

Page 11: Python para Desenvolvedores

Controle de fluxo

Page 12: Python para Desenvolvedores

Laço de Repetição

Page 13: Python para Desenvolvedores

Laço de Repetição

Page 14: Python para Desenvolvedores

Laço de Repetição

Page 15: Python para Desenvolvedores

Laço de Repetição

Page 16: Python para Desenvolvedores

Tipos

• Números (inteiros, reais, complexos, ... ).

• Texto.

• Lista.

• Tupla.

• Dicionário.

Page 17: Python para Desenvolvedores

Números

Python oferece alguns tipos numéricos na forma de builtins:

• Inteiro (int): i = 1

• Real de ponto flutuante (float): f = 3.14

• Complexo (complex): c = 3 + 4j

Page 18: Python para Desenvolvedores

Exemplo

Page 19: Python para Desenvolvedores

Exemplo

Page 20: Python para Desenvolvedores

Operações aritméticas

• Soma (+).

• Diferença (-).

• Multiplicação (*).

• Divisão (/): retorna um decimal

• Divisão inteira (//): retorna um inteiro

• Módulo (%): retorna o resto da divisão.

• Potência (**)

• Positivo (+).

• Negativo (-).

Page 21: Python para Desenvolvedores

Operações lógicas

• Menor (<).

• Maior (>).

• Menor ou igual (<=).

• Maior ou igual (>=).

• Igual (==).

• Diferente (!=).

Page 22: Python para Desenvolvedores

Operações relacionais

• and (padrão)

• or (padrão)

• not (padrão)

• is: retorna verdadeiro se receber duas referências ao mesmo objeto

• in: retorna verdadeiro se receber um item e uma lista e o item ocorrer

Page 23: Python para Desenvolvedores

Prática 1

• Criar um script Python que faz a leitura do teclado de dois números e dizer se o primeiro é maior que o segundo ou se o segundo é maior ou igual ao primeiro.

raw_input(‘Pergunta aqui’)

int(uma string aqui)

Page 24: Python para Desenvolvedores

Prática 2

• Criar um script Python que recebe um número do teclado e realiza um laço de repetição de 1 até o número digitado, em cada repetição imprimir na tela o número da repetição.

print ‘Pergunta aqui’

Page 25: Python para Desenvolvedores

Prática 3

• Criar um script Python que pergunta 1 – para continuar repetindo e 2 – para sair da repetição, a cada vez que repete imprimir na tela o número da repetição.

Page 26: Python para Desenvolvedores

Strings

• String padrão: s = 'Led Zeppelin'

• String unicode: u = u'Björk'

Page 27: Python para Desenvolvedores

Strings

Page 28: Python para Desenvolvedores

Listas

• Listas são coleções heterogêneas de objetos, que podem ser de qualquer tipo, inclusive outras listas.

Page 29: Python para Desenvolvedores

Tópicos

• xx.

Page 30: Python para Desenvolvedores

Tópicos

• xx.

Page 31: Python para Desenvolvedores

Prática 4

• Criar um script Python que pergunta ao usuário se ele quer remover, adicionar, imprimir a lista de nomes, é lógico que se o usuário quer adicionar um nome na lista ele também deve informar o nome.

Page 32: Python para Desenvolvedores

Prática 5

• Dado uma lista [‘Wellington’, ’Pinto’, ’de’, ’Oliveira’] imprimir o primeiro e o último elemento desta lista.

Page 33: Python para Desenvolvedores

Dicionários

• Um dicionário é uma lista de associações compostas por uma chave única e estruturas correspondentes.

• Dicionários são mutáveis, tais como as listas.

Page 34: Python para Desenvolvedores

Tópicos

Page 35: Python para Desenvolvedores

Tópicos

• xx.

Page 36: Python para Desenvolvedores

Verdadeiro, falso e nulo

• Em Python, o tipo booleano (bool) é uma especialização do tipo inteiro (int).

• O verdadeiro é chamado True e é igual a 1, enquanto o falso é chamado False e é igual a zero.

Page 37: Python para Desenvolvedores

Verdadeiro, falso e nulo

Os seguintes valores são considerados falsos:

• False (falso).

• None (nulo).

• 0 (zero).

• “” (string vazia).

• [] (lista vazia).

• () (tupla vazia).

• {} (dicionário vazio).

Page 38: Python para Desenvolvedores

Funções

• Funções são blocos de código identificados por um nome, que podem receber parâmetros pré-determinados.

Page 39: Python para Desenvolvedores

Exemplo

Page 40: Python para Desenvolvedores

Prática 6

• Fazer um script que disponibiliza para o usuário 4 funções, são: soma, subtração, divisão e multiplicação. Lembrando que o usuário deve informar o que quer fazer bem como os valores pelo teclado.

Page 41: Python para Desenvolvedores

Módulos

• Para o Python, módulos são arquivos fonte que podem importados para um programa.

• Podem conter qualquer estrutura do Python e são executados quando importados.

Page 42: Python para Desenvolvedores
Page 43: Python para Desenvolvedores

Escopo de nomes

Page 44: Python para Desenvolvedores

Escopo de nomes

Page 45: Python para Desenvolvedores

Exceções

Page 46: Python para Desenvolvedores

Classes

• Objetos são abstrações computacionais que representam entidades, com suas qualidades (atributos) e ações (métodos) que estas podem realizar.

Page 47: Python para Desenvolvedores

Classes

Page 48: Python para Desenvolvedores

Classes

Page 49: Python para Desenvolvedores
Page 50: Python para Desenvolvedores

Herança simples

• Herança é um mecanismo que a orientação a objeto provê, com objetivo de facilitar o reaproveitamento de código.

Page 51: Python para Desenvolvedores

Herança simples

Page 52: Python para Desenvolvedores

Herança simples

Page 53: Python para Desenvolvedores

Herança simples

Page 54: Python para Desenvolvedores

Prática 7

• Fazer as seguintes classes: Animal, Cachorro, Gato.

• Lembrando que Cachorro e Gato herdam diretamente de Animal.

• Demonstrar a técnica de sobrescrita baseado na herança.

Page 55: Python para Desenvolvedores

Referência

• BORGES, Luiz Eduardo. Python para Desenvolvedores. 2. ed. Rio de Janeiro: Creative Commons, 2010. Disponível em: <http://ark4n.wordpress.com/python/>. Acesso em: 2013 out. 4.

• Material acima é gratuíto