Você está na página 1de 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

til

Programao como ferramenta

Pode ser aplicado a quase qualquer atividade

rte ! "i#ncia ! Filosofia ! $ntretenimento


Algoritmos e Programas

lgoritmo = m%todo para solucionar um problema

$struturas de dados = m%todo para organizar


informa&es

Programa = algoritmos ' estruturas de dados


e(pressos de forma a ser entendidos pelo
computador

Programas tipicamente processam dados de entrada


e produzem dados de sa)da
Programa Entrada
Sada
Linguagem de Programao

*inguagem artificial com sinta(e e sem+ntica


bem definidos

,sada para e(primir programas

Mais -t%cnica. do que linguagens naturais

Menos -t%cnica. do que a linguagem nativa


dos computadores /linguagem de m0quina1
Compiladores
Programas que traduzem programas escritos em linguagem de
programao para programas equivalentes escritos em
linguagem de m0quina
2 primeiro % chamado de programa fonte3 enquanto que o
segundo % chamado de programa ob4eto
Compilador
Programa
fonte
Programa
objeto
Link-Editores

2 programa-ob4eto nem sempre est0 pronto


para ser e(ecutado

2utros trechos de c5digo precisam ser inclu)dos

6ibliotecas

7ubprogramas

Programa e(ecut0vel % montado por um


programa chamado link-editor ou linking-loader

Compilador normalmente chama o link-editor


automaticamente
Link-Editores
Link Editor
Prog
objeto 1
Prog
objeto N
Biblioteca Biblioteca
Programa
executvel
Interpretadores

7imulam uma -m0quina virtual.

Programa fonte % lido3 entendido e as


instru&es so e(ecutadas imediatamente
Interpretador
Programa
fonte
Entrada
Sada
Esquemas Hridos

"ompilador gera c5digo para uma m0quina virtual


/pseudo-c5digo1

M0quina virtual % e(ecutada separadamente lendo


pseudo-c5digo e interpretando-o
Compilador
Prog.
Fonte
Prog
objeto
Dados
Entrada
Interpretador
Sada
Por que Python?
7imples o suficiente para um curso introdut5rio
Muitos recursos

2rientao a 2b4etos

$scal0vel /m5dulos3 classes3 controle de e(ce&es1

6iblioteca embutida e(tensa e grande nmero de


m5dulos fornecidos por terceiros
8rande variedade de aplica&es
*inguagem interpretada /script1
Multi-plataforma
8r0tis9
"omunidade bastante grande
! que "amos pre#isar

,ma implementao da linguagem

http:!!;;;<p=thon<org

>mplementao pronta para bai(ar /;indo;s1

*inu( normalmente 40 vem com p=thon


instalado

,m editor de te(tos

?ualquer editor serve

mbiente >@*$ inclui um editor

>nclu)do na distribuio ;indo;s


Python Interati"o

Aode o interpretador

@igite comandos p=thon

"ada comando % e(ecutado imediatamente


[cancer]~> python
Python 2.4.1 (#1, May 16 2005, 15:19:29)
[G 4.0.0 20050512 (!e" #at 4.0.0$5)] on %&n'(2
)ype *he%p*, *copyr&+ht*, *cre"&t,* or *%&cen,e* -or .ore &n-or.at&on.
>>> pr&nt *a%o/*
a%o/
>>>
E$e#utando um programa
Python

$screva um programa p=thon

>nvoque o interpretador para e(ecut0-lo


[cancer]~> cat pro+.py
pr&nt *a%o/*
[cancer]~> python pro+.py
a%o/
E$e#utando um programa Python

>nterfaces gr0ficas normalmente 40 associam os


sufi(os <p= e <p=c com o interpretador

Você também pode gostar