You are on page 1of 14

Programando em Python

Claudio Esperana

Por que programar?


divertido

Melhor que usar programas feitos por outros Fazer programas = resolver quebra-cabeas Programao como arte Programao como ferramenta Pode ser aplicado a quase qualquer atividade

til

Arte / Cincia / Filosofia / Entretenimento

Algoritmos e Programas
Algoritmo = mtodo para solucionar um problema

Estruturas de dados = mtodo para organizar informaes Programa = algoritmos + estruturas de dados expressos de forma a ser

entendidos pelo computador Programas tipicamente processam dados de entrada e produzem dados de sada

Entra da

Programa

Sada

Linguagem de Programao
Linguagem artificial com sintaxe e semntica bem definidos
Usada para exprimir programas

Mais tcnica do que linguagens naturais


Menos tcnica do que a linguagem nativa dos computadores

(linguagem de mquina)

Compiladores
Programas que traduzem programas escritos em linguagem de

programao para programas equivalentes escritos em linguagem de mquina O primeiro chamado de programa fonte, enquanto que o segundo chamado de programa objeto

Program a fonte

Compilador

Programa objeto

Link-Editores
O programa-objeto nem sempre est pronto para ser executado

Outros trechos de cdigo precisam ser includos


Bibliotecas Subprogramas

Programa executvel montado por um programa chamado

link-editor ou linking-loader

Compilador normalmente chama o link-editor automaticamente

Link-Editores

Prog objeto 1

Link Editor
Prog objeto N

Programa executvel

Biblioteca

Biblioteca

Interpretadores
Simulam uma mquina virtual
Programa fonte lido, entendido e as

instrues so executadas imediatamente

Entrada

Interpretador

Sada

Programa fonte

Esquemas Hbridos
Compilador gera cdigo para uma mquina virtual (pseudo-cdigo)
Mquina virtual executada separadamente lendo pseudo-cdigo e

interpretando-o

Prog. Fonte

Dados Entrada Interpretador Sada

Compilador

Prog objeto

Por que Python?


Simples o suficiente para um curso introdutrio

Muitos recursos

Orientao a Objetos

Escalvel (mdulos, classes, controle de excees)


Biblioteca embutida extensa e grande nmero de mdulos

fornecidos por terceiros


Grande variedade de aplicaes
Linguagem interpretada (script) Multi-plataforma Grtis! Comunidade bastante grande

O que vamos precisar


Uma implementao da linguagem

http://www.python.org Implementao pronta para baixar (windows)

Linux normalmente j vem com python instalado Qualquer editor serve Ambiente IDLE inclui um editor

Um editor de textos

Includo na distribuio windows

Python Interativo
Rode o interpretador
Digite comandos python Cada comando executado imediatamente
[cancer]~> python Python 2.4.1 (#1, May 16 2005, 15:19:29) [GCC 4.0.0 20050512 (Red Hat 4.0.0-5)] on linux2

Type "help", "copyright", "credits" or "license" for more information.


>>> print "alo!"

alo!
>>>

Executando um programa Python


Escreva um programa python Invoque o interpretador para execut-lo

[cancer]~> cat prog.py print "alo!" [cancer]~> python prog.py alo!

Executando um programa Python


Interfaces grficas normalmente j associam os

sufixos .py e .pyc com o interpretador

You might also like