SlideShare uma empresa Scribd logo
1 de 76
Baixar para ler offline
Rômulo Machado
Getting Started with
Rômulo Machado
Rômulo Machado?
●
Técnico em Informática Industrial (IFF);
●
Estudante do Bacharelado em Sistemas de
Informação (IFF);
●
Bolsista do Projeto Biblioteca Digital, do
MEC, desenvolvendo em Python, Zope e Pone
(NSI).
Rômulo Machado
Rômulo Machado?
●
Técnico em Informática Industrial (IFF);
●
Estudante do Bacharelado em Sistemas de
Informação (IFF);
●
Bolsista do Projeto Biblioteca Digital, do
MEC, desenvolvendo em Python, Zope e Pone
(NSI).
Rômulo Machado
Rômulo Machado?
●
Técnico em Informática Industrial (IFF);
●
Estudante do Bacharelado em Sistemas de
Informação (IFF);
●
Bolsista do Projeto Biblioteca Digital, do
MEC, desenvolvendo em Python, Zope e Pone
(NSI).
Rômulo Machado
Introdução
●
Guido Van Rossum
●
Computer Programming
for Everybody
●
Monty Python
Rômulo Machado
Introdução
●
Guido Van Rossum
●
Computer Programming
for Everybody
●
Monty Python
Rômulo Machado
Introdução
●
Guido Van Rossum
●
Computer Programming
for Everybody
●
Monty Python
Rômulo Machado
Introdução
●
Guido Van Rossum
●
Computer Programming
for Everybody
●
Monty Python
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Portabilidade...
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Quem usa?
Rômulo Machado
Algumas características...
●
Interpretada
●
Orientada a Objetos
●
Suporte a outros paradigmas
●
Fácil integração com outras linguagens
Rômulo Machado
Algumas características...
●
Interpretada
●
Orientada a Objetos
●
Suporte a outros paradigmas
●
Fácil integração com outras linguagens
Rômulo Machado
Algumas características...
●
Interpretada
●
Orientada a Objetos
●
Suporte a outros paradigmas
●
Fácil integração com outras linguagens
Rômulo Machado
Algumas características...
●
Interpretada
●
Orientada a Objetos
●
Suporte a outros paradigmas
●
Fácil integração com outras linguagens
Rômulo Machado
Vamos começar!
●
Esqueça declaração de variáveis!
●
Esqueça Begin e End!
●
Esqueça { e } !
●
Se você já era organizado, parabéns!
Se não era, vai ter que se organizar!
Por quê? A identação é obrigatória!
Rômulo Machado
Vamos começar!
●
Esqueça declaração de variáveis!
●
Esqueça Begin e End!
●
Esqueça { e } !
●
Se você já era organizado, parabéns!
Se não era, vai ter que se organizar!
Por quê? A identação é obrigatória!
Rômulo Machado
Vamos começar!
●
Esqueça declaração de variáveis!
●
Esqueça Begin e End!
●
Esqueça { e } !
●
Se você já era organizado, parabéns!
Se não era, vai ter que se organizar!
Por quê? A identação é obrigatória!
Rômulo Machado
Vamos começar!
●
Esqueça declaração de variáveis!
●
Esqueça Begin e End!
●
Esqueça { e } !
●
Se você já era organizado, parabéns!
Se não era, vai ter que se organizar!
Por quê? A identação é obrigatória!
Rômulo Machado
Vamos começar!
>>> print “Hello World!”
Hello World!
>>> num_int = 10
>>> type(num_int)
<type 'int'>
>>> num_long = 10L
>>> type(num_long)
<type 'long'>
Rômulo Machado
Variáveis numéricas
>>> num_real = 10.0
>>> type(num_real)
<type 'float'>
>>> nome = 'Romulo'
>>> type(nome)
<type 'str'>
>>> sobrenome = ' Machado'
>>> type(sobrenome)
<type 'str'>
Rômulo Machado
Strings [0]
>>> nomecompleto = nome + sobrenome
>>> print nomecompleto
Romulo Machado
>>> sobrenome*3
Machado Machado Machado
>>> len(nomecompleto)
14
Rômulo Machado
Strings [1]
>>> nomecompleto[0]
'R'
>>> nomecompleto[8:12]
'Mach'
>>> nomecompleto[-7:]
'Machado'
Rômulo Machado
Strings [2]
Rômulo Machado
Strings [3]
Rômulo Machado
Alguns Métodos (Strings)
>>> nomecompleto.count('o')
3
>>> nomecompleto.lower()
'romulo machado'
>>> nomecompleto.upper()
'ROMULO MACHADO'
Rômulo Machado
Alguns Métodos (Strings)
>>> nomecompleto.split()
['Romulo', 'Machado']
>>> nomecompleto.replace('Romulo', 'Rômulo')
'Rômulo Machado'
●
Formadas por elementos de qualquer tipo.
●
Delimitadas por parênteses.
>>> estado = ('RJ', 'Rio de Janeiro')
>>> type(estado)
<type 'tuple'>
Rômulo Machado
Tuplas
●
Formadas por elementos de qualquer tipo.
●
Delimitadas por colchetes.
>>> instrumentos = ['sax', 'gaita', 'teclado']
>>> type(instrumentos)
<type 'list'>
Rômulo Machado
Listas
Rômulo Machado
Alguns Métodos (Listas)
>>> instrumentos.insert(0, 'viola')
>>> instrumentos
['viola', 'sax', 'gaita', 'teclado']
>>> instrumentos.sort()
>>> instrumentos
['gaita', 'sax', 'teclado', 'viola']
Rômulo Machado
Alguns Métodos (Listas)
>>> num = range(5)
>>> num
[0, 1, 2, 3, 4]
>>> max(num)
4
>>> min(num)
0
>>> len(num)
5
>>> sum(num)
10
●
Formadas por pares de chave-valor.
- Chaves serão sempre valores imutáveis!
●
Delimitadas por chaves.
>>> dados = {'nome': 'Rômulo', 'idade': 19}
>>> type(dados)
<type 'dict'>
Rômulo Machado
Dicionários [0]
>>> print dados['nome']
'Rômulo'
>>> dados['idade'] = 20
>>> print dados['idade']
20
Rômulo Machado
Dicionários [1]
>>> nome = raw_input('Digite o seu nome: ')
Digite seu nome: Romulo Machado
>>> nome
'Romulo Machado'
>>> type(nome)
<type 'str'>
Rômulo Machado
Entrada de Dados [0]
>>> idade = int(raw_input('Digite sua idade: '))
Digite sua idade: 19
>>> idade
19
>>> type(idade)
<type 'int'>
Rômulo Machado
Entrada de Dados [1]
>>> print 'Seu nome é %s' %nome
Seu nome é Romulo Machado
>>> print 'Seu nome é %s e sua idade é %i'
%(nome, idade)
Seu nome é Romulo Machado e sua idade é 19
Rômulo Machado
Saída de Dados
>>> 1 + 1
2
>>> 7 – 3
4
>>> 5 * 4
20
Rômulo Machado
Operadores algébricos
>>> 60 / 6
10
>>> 2**3
8
>>> 7 % 2
1
>>> 1 == 1
True
>>> 10 != 4
True
>>> 5 < 3
False
Rômulo Machado
Operadores booleanos
>>> 52 > 6
True
>>> 7 <= 2
False
>>> 1 <= 2
True
1- Faça um programa que peça um número então mostre a
mensagem “O número informado foi [numero]”.
2- Faça um programa que peça o nome e o número do
telefone de uma pessoa e mostre a mensagem
“Nome: [nome] – Telefone: [telefone]”.
3- Faça um programa que peça dois números e imprima a
soma.
4- Faça um programa que converta metros para centímetros.
Rômulo Machado
Mão na massa! [0]
If... elif... else...
>>> if (condicao):
<bloco de código>
elif (condicao):
<bloco de código>
else:
<bloco de código>
>>> variavel = valor1 if condicao else valor2
Rômulo Machado
Estrutura de Condição [0]
Exemplo:
>>> temp = int(raw_input('Temperatura: '))
>>> if temp < 0:
print 'Tá congelando!'
elif 0 < = temp <= 20:
print 'Tá frio!'
else:
print 'Tá calor!'
Rômulo Machado
Estrutura de Condição [1]
For
>>> for (referência) in (sequência):
<bloco de código>
While
>>> while(condição):
<bloco de código>
Rômulo Machado
Estruturas de Repetição [0]
Exemplo:
>>> for i in range(6):
print i
>>> while(a <= 10):
print a
a += 1
Rômulo Machado
Estruturas de Repetição [1]
1- Faça um programa que peça dois números e imprima o
maior.
2- Desenvolva um programa que faça a tabuada de um número
qualquer inteiro, a tabuada não deve necessariamente iniciar
em 1 e terminar em 10, o valor inicial e final devem ser
informados também pelo usuário. Obs: Você deve verificar se
o usuário não digitou o final menor que o inicial.
3- Faça um programa que peça as quatro notas de um aluno e
retorne Aprovado, Reprovado ou P3, de acordo com a média
das notas. Nota > 6 = Aprovado, Nota < 5 = Reprovado,
6 > Nota > 5 = P3.
Rômulo Machado
Mão na massa! [1]
>>> def nomedafuncao (parametros):
pass
Exemplo:
>>> def diga_oi(nome):
print “Oi, %s“ %nome
Rômulo Machado
Funções [0]
>>> def imprime (a, b = 1, c = 2):
print “a = %d b = %d c = %d” %(a, b, c)
>>> imprime(2, 3, 4)
a = 2 b = 3 c = 4
>>> imprime(c= 10, a=3, b=2)
a = 3 b = 2 c = 10
Rômulo Machado
Funções [1]
1- Faça um programa com uma função que necessite de três
argumentos, e que forneça a soma desses três argumentos.
2- Faça um programa com uma função que calcule o fatorial
de um número (maneira tradicional e recursiva).
3- Faça uma programa com uma função que receba um número
inteiro qualquer e informe a quantidade de dígitos do mesmo.
Rômulo Machado
Mão na massa! [2]
>>> import modulo
>>> modulo.funcao()
>>> from modulo import funcao
>>> funcao()
Rômulo Machado
Módulos [0]
Exemplo:
>>> import math
>>> math.factorial(5)
120.0
>>> from math import factorial
>>> factorial(5)
120.0
Rômulo Machado
Módulos [1]
Rômulo Machado
Testes automatizados
Rômulo Machado
TDD
>>> import unittest
>>> from should_dsl import should_be
>>> from calculadora import somar
>>> class TesteCalculadora(unittest.TestCase):
def teste_somar_dois_numeros(self):
somar(2, 3) |should_be| 5
>>> if __name__ == '__main__'
unittest.main()
Rômulo Machado
Unittest, should_dsl
Rômulo Machado
Eu não inventei isso tudo...
Rômulo Machado
Eu não inventei isso tudo...
Rômulo Machado
Eu não inventei isso tudo...
Rômulo Machado
Eu não inventei isso tudo...
Rômulo Machado
Obrigado!
http://romulo-machado.blogspot.com/
@romulo_machado_
rcorreamachado@gmail.com

Mais conteúdo relacionado

Semelhante a Getting Started with Python

Algoritmos e Técnicas de Programação - Aula 03
Algoritmos e Técnicas de Programação - Aula 03Algoritmos e Técnicas de Programação - Aula 03
Algoritmos e Técnicas de Programação - Aula 03thomasdacosta
 
Aula 5 - Programação 1
Aula 5 - Programação 1Aula 5 - Programação 1
Aula 5 - Programação 1Isaac Barros
 
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxAula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxaronoliveira3
 
Programação Estruturada 2 - Aula 01
Programação Estruturada 2 - Aula 01Programação Estruturada 2 - Aula 01
Programação Estruturada 2 - Aula 01thomasdacosta
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Alex Camargo
 
Logica Algoritmo 07 Subalgoritmos
Logica Algoritmo 07 SubalgoritmosLogica Algoritmo 07 Subalgoritmos
Logica Algoritmo 07 SubalgoritmosRegis Magalhães
 
Luckiest developers with Django and Phonegap
Luckiest developers with Django and PhonegapLuckiest developers with Django and Phonegap
Luckiest developers with Django and PhonegapJoelmir Ribacki
 
Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Isaac Barros
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programaçãoEdu Queiroz
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)Rudá Moura
 
As cinco etapas da programação
As cinco etapas da programaçãoAs cinco etapas da programação
As cinco etapas da programaçãoClausia Antoneli
 
Linguagem visualg2.0
Linguagem visualg2.0Linguagem visualg2.0
Linguagem visualg2.0Lucas Emanuel
 
Algoritmos visualg
Algoritmos visualgAlgoritmos visualg
Algoritmos visualgDiego Sales
 
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOSAULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOSprofjotamarcosduarte
 

Semelhante a Getting Started with Python (20)

Algoritmos e Técnicas de Programação - Aula 03
Algoritmos e Técnicas de Programação - Aula 03Algoritmos e Técnicas de Programação - Aula 03
Algoritmos e Técnicas de Programação - Aula 03
 
Atpaula3 150906041855-lva1-app6892
Atpaula3 150906041855-lva1-app6892Atpaula3 150906041855-lva1-app6892
Atpaula3 150906041855-lva1-app6892
 
Aula 5 - Programação 1
Aula 5 - Programação 1Aula 5 - Programação 1
Aula 5 - Programação 1
 
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxAula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
 
Programação Estruturada 2 - Aula 01
Programação Estruturada 2 - Aula 01Programação Estruturada 2 - Aula 01
Programação Estruturada 2 - Aula 01
 
Etapas da programação
Etapas da programaçãoEtapas da programação
Etapas da programação
 
Comandos em python
Comandos em pythonComandos em python
Comandos em python
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
 
Logica Algoritmo 07 Subalgoritmos
Logica Algoritmo 07 SubalgoritmosLogica Algoritmo 07 Subalgoritmos
Logica Algoritmo 07 Subalgoritmos
 
Luckiest developers with Django and Phonegap
Luckiest developers with Django and PhonegapLuckiest developers with Django and Phonegap
Luckiest developers with Django and Phonegap
 
Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1Aula 9 repeticao - Programação 1
Aula 9 repeticao - Programação 1
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programação
 
Aula 9 - Introdução ao Python
Aula 9 - Introdução ao PythonAula 9 - Introdução ao Python
Aula 9 - Introdução ao Python
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
 
Modulo02
Modulo02Modulo02
Modulo02
 
As cinco etapas da programação
As cinco etapas da programaçãoAs cinco etapas da programação
As cinco etapas da programação
 
Visu alg ref (2)
Visu alg ref (2)Visu alg ref (2)
Visu alg ref (2)
 
Linguagem visualg2.0
Linguagem visualg2.0Linguagem visualg2.0
Linguagem visualg2.0
 
Algoritmos visualg
Algoritmos visualgAlgoritmos visualg
Algoritmos visualg
 
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOSAULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
AULA 06 - REVISÃO DE CONCEITOS INICIAIS DE ALGORITMOS
 

Getting Started with Python