SlideShare uma empresa Scribd logo
Minicurso Básico de Python - PythonDay
Apresentação
Diego Leite Dilan Nery
dnerylopes@gmail.comdiegojleite@gmail.com
Cronograma
❏ Introdução ao Python
❏ Estruturas de controle e de
repetição
❏ Tipos básicos
❏ Funções e arquivos
Histórico
❏ Guido van Rossum
❏ Versão 1.0 em 1994
❏ Principal objetivo
❏ Aumentar a
produtividade do
programador
❏ Hoje o Python está
na versão 3.0
Shell
Script
Estruturas de Controle e rep.
1. Condições
1.1. if
1.2. else
1.3. elif
2. Repetições
2.1. while
2.2. Contador
2.3. Acumulador
2.4. Interrupção
2.5. for
Estruturas de Controle e rep.
print (“Olá”)
print (“Tudo bem?”)
Condições - if
Estruturas de Controle e rep.
Condições - if
Estruturas de Controle e rep.
# Ler 2 valores inteiros e imprimir
o maior deles.
Condições - if
a = int(input(“Digite a: ”))
b = int(input(“Digite b: ”))
if a > b:
print (“A é o maior!”)
if b > a:
print (“B é o maior!”)
Estruturas de Controle e rep.
# Ler 2 valores inteiros e imprimir
o maior deles.
Condições - else
a = int(input(“Digite a: ”))
b = int(input(“Digite b: ”))
if a > b:
print (“A é o maior!”)
else:
print (“B é o maior!”)
Estruturas de Controle e rep.
# Uma empresa de internet discada
cobra R$ 0,20 centavos por pulso,
quando a conta vem abaixo de 200
minutos. Entre 200 e 400 min, o
preço é de R$ 0,18. Acima de 400
min o preço cai para R$ 0,15.
Calcule o preço de uma conta.
Condições - Estruturas aninhadas
Estruturas de Controle e rep.
m = int(input(“Digite m: ”))
if m < 200:
preco = 0.20
else:
if m <= 400:
preco = 0.18
else:
preco = 0.15
print (“Conta: %d” % (m*preco))
Condições - Estruturas aninhadas
Estruturas de Controle e rep.
# A empresa de internet criou uma
promoção onde, contas acima de 800
minutos pagam R$ 0,08 o minuto.
Condições - Estruturas aninhadas
Estruturas de Controle e rep.
Condições - Estruturas aninhadas
m = int(input(“Digite m: ”))
if m < 200:
preco = 0.20
else:
if m <= 400:
preco = 0.18
else:
if m <= 800:
preco = 0.15
else:
preco = 0.08
print (“Conta: %d” % (m*preco))
Estruturas de Controle e rep.
# A cláusula elif substitui um else
if seguido.
Condições - elif
m = int(input(“Digite m: ”))
if m < 200:
preco = 0.20
elif m <= 400:
preco = 0.18
elif m <= 800:
preco = 0.15
else:
preco = 0.08
print (“Conta: %d” % (m*preco))
Estruturas de Controle e rep.
Exercícios!
Estruturas de Controle e rep.
# Imprimindo de 1 a 3
Repetições
# Modo Simples
print (1)
print (2)
print (3)
Estruturas de Controle e rep.
# Imprimindo de 1 a 3
Repetições
# Utilizando uma variável
x = 1
print (x)
x = 2
print (x)
x = 3
print (x)
Estruturas de Controle e rep.
# Imprimindo de 1 a 3
Repetições
# Incrementando a variável
x = 1
print (x)
x = x + 1
print (x)
x = x + 1
print (x)
Estruturas de Controle e rep.
# Imprimindo de 1 a 3
Repetições - while
# Usando while
x = 1
while x <= 3:
print (x)
x = x + 1
Estruturas de Controle e rep.
# Imprimir os números pares entre 0 e um
número fornecido usando if.
Repetições - Contadores
fim = int(input(“Digite um número: ”))
n = 0
while n <= fim:
if n % 2 == 0:
print (“N: %d” % (n))
n = n + 1
Estruturas de Controle e rep.
# Cálculo da soma de dez números inteiros.
Repetições - Acumulador
n = 0
soma = 0
while n < 10:
num = int(input(“Digite um número: ”)
soma = soma + num
n = n + 1
print (“Total: %d” % (soma))
Estruturas de Controle e rep.
# Calcule a soma dos números inteiros até
ser digitado 0 (ZERO).
Repetições - Interrupção
soma = 0
while True:
num = int(input(“Digite um número: ”)
if num == 0:
break
soma = soma + num
print (“Total: %d” % (soma))
Estruturas de Controle e rep.
Repetições - For*
for letra in ‘aeiou’:
print (letra)
>>>
a
e
i
o
u
texto = ‘aeiou’
k = 0
while k < len(texto):
letra = texto[k]
print (letra)
k = k + 1
>>>
a
e
i
o
u
Estruturas de Controle e rep.
Exercícios!
Tipos básicos
1. Numeros
1.1. int
1.2. float
1.3. complex
2. String
4. Conjuntos
4.1. Lista
4.2. Tupla
4.3. Dicionários
3. Boolean
Tipos básicos
>>> type(1)
<type ‘int’>
>>> type(7.5)
<type ‘float’>
>>> type(1e5)
<type ‘float’>
>>> type(20+5j)
<type ‘complex’>
>>>
Números
Tipos básicos
>>> spam = “eggs”
>>> type(spam)
<type ‘str’>
>>> spam + “ bacon”
‘eggs bacon’
>>> spam[0]
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
TypeError: ‘str’ object does not supprt item
assignment
Strings
Tipos básicos
>>> type(True)
<type ‘bool’>
>>> type(False)
<type ‘bool’>
>>> bool(0)
False
>>> bool(0.0)
False
>>> bool(0+0j)
False
>>> bool(“”)
False
>>> bool([])
False
>>> bool({})
False
>>> bool(())
False
Boolean
Tipos básicos
Listas
Tipos básicos
Listas
>>> type([])
<type ‘list’>
>>> spam = [‘eggs’, ‘bacon’]
>>> spam[0]
‘eggs’
>>> spam[1] = ‘spam’
>>> spam
[‘eggs’, ‘spam’]
>>> len(spam)
2
Tipos básicos
Listas
>>> spam[2] = 1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
>>> spam.append(1)
>>> spam[2]
1
>>> spam
[‘eggs’, ‘spam’, 1]
>>> len(spam)
3
Tipos básicos
Tuplas
>>> type(())
<type ‘tuple’>
>>> spam = (‘eggs’, ‘bacon’)
>>> spam[0]
‘eggs’
>>> spam[1] = ‘spam’
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item
assignment
Tipos básicos
Tuplas
>>> spam
(‘eggs’, ‘bacon’)
>>> spam.append(1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute
'append'
>>> spam = spam + (1,)
>>> spam
(‘eggs’, ‘bacon’, 1)
Tipos básicos
Dicionário
Tipos básicos
Dicionário
>>> type({})
<type ‘dict’>
>>> spam = {‘nome’:’João’,’idade’:32,’apelidos’:[‘jô’,
‘joãozinho’]}
>>> spam[nome]
‘João’
>>> spam[idade] = 33
>>> spam
{'idade': 33, 'apelidos': ['joão', 'joãozinho'],
'nome': 'João'}
Tipos básicos
Dicionário
>>> spam[‘endereco’] = ‘Rua J’
>>> spam
{'idade': 33, 'enderexc3xa7o': 'Rua J', 'apelidos':
['jxc3xb4', 'joxc3xa3ozinho'], 'nome':
'Joxc3xa3o'}
Tipos básicos
Mais Exercícios!
Funções e arquivos
1. Funções
1.1. Funções
1.2. Escopo de
variável
1.3. Números
aleatórios
1. Arquivos
1.1. Leitura e
escrita em
arquivos.
Funções e arquivos
# Utilizamos def para definir uma função e
return para devolver algum valor.
Funções
def ehpar(x):
return x % 2 == 0
>>> ehpar(20)
True
>>> ehpar(19)
False
Funções e arquivos
# Defina uma função fatorial
Funções
def fat(n):
f = 1
while n > 0:
f = f * n
n = n - 1
return f
>>> for i in range(3): print( fat(i) )
1
1
2
Funções e arquivos
# a = 5 e a = 7 são variáveis diferentes!
Funções - Escopo de variáveis
a = 5
def muda_e_imprime():
a = 7
print (“a dentro da funcao: %d” %a)
print (“antes da funcao: %d” %a)
muda_e_imprime()
print (“depois da funcao: %d” %a)
Funções e arquivos
# a = 5 é colocada como global e modificada
dentro da função.
Funções - Escopo de variáveis
a = 5
def muda_e_imprime():
global a
a = 7
print (“a dentro da funcao: %d” %a)
print (“antes da funcao: %d” %a)
muda_e_imprime()
print (“depois da funcao: %d” %a)
Funções e arquivos
# É necessário importar o módulo random
Funções - Números aleatórios
>>> import random
>>> random.randomint(1, 50)
13
>>> nomes = [‘Diego’, ‘Amanda’, ‘Dilan’, ‘Gaby’]
>>> random.choice(nomes)
‘Amanda’
>>> random.shuffle(nomes)
[‘Amanda’, ‘Gaby’, ‘Dilan’, ‘Diego’]
Funções e arquivos
FUUUUUUUUUU!!!! Exercícios! o/
Funções e arquivos
# Estes são os principais métodos para a
leitura e escrita de um arquivo.
Arquivos - principais métodos
❏ read(): como visto acima, retorna uma string única com
todo o conteúdo do arquivo.
❏ readline(): retorna a próxima linha do arquivo, e
incrementa a posição atual.
❏ readlines(): retorna todo o conteúdo do arquivo em uma
lista, uma linha do arquivo por elemento da lista.
Funções e arquivos
# Estes são os principais métodos para a
leitura e escrita de um arquivo.
Arquivos - principais métodos
❏ write(data): escreve a string data para o arquivo, na
posição atual ou ao final do arquivo, dependendo do
modo de abertura. Esta função falha se o arquivo foi
aberto com modo `r'.
❏ close(): fecha o arquivo.
Funções e arquivos
# Estes são os principais métodos para a
leitura e escrita de um arquivo.
Arquivos - principais métodos
arquivo = open('numeros.txt', 'r')
for linha in arquivo.readlines():
print(linha)
arquivo.close()
Funções e arquivos
Exercícios! .o/
Conclusões
# Curso Python para Zumbis: http://pycursos.
com/python-para-zumbis/
# Learn Python the Hard Way:
http://learnpythonthehardway.org/
# Python para Desenvolvedores: http://ark4n.
wordpress.com/python/
# Documentação:https://www.python.org/
Onde posso aprender mais?
Conclusões
E os próximos eventos?
http://praticasdesoftware.com.br
Conclusões
E os próximos eventos?
http://2014.pythonnordeste.org/

Mais conteúdo relacionado

PPT
Introdução ao Python
Renato de Pontes Pereira
 
PDF
Introdução ao Python
Marcio Palheta
 
KEY
Python 02
Bruno Catão
 
PDF
Python: a primeira mordida
Luciano Ramalho
 
KEY
Introdução à Linguagem de programação Python
dmmartins
 
KEY
Python 01
Bruno Catão
 
KEY
Python 03
Bruno Catão
 
Introdução ao Python
Renato de Pontes Pereira
 
Introdução ao Python
Marcio Palheta
 
Python 02
Bruno Catão
 
Python: a primeira mordida
Luciano Ramalho
 
Introdução à Linguagem de programação Python
dmmartins
 
Python 01
Bruno Catão
 
Python 03
Bruno Catão
 

Mais procurados (20)

PDF
Resumo Anotacoes Certificacao SCJP 5
Gilberto Holms
 
PDF
Python aula 2
Natã Melo
 
KEY
Python 04
Bruno Catão
 
PDF
Python para quem sabe Python (aula 2)
Luciano Ramalho
 
KEY
Python 05
Bruno Catão
 
PDF
A Classe StringBuilder em Java
Devmedia
 
PDF
Python Class
Romualdo Andre
 
PPTX
Introdução a programação em python d5 anexo 3 (códigos)
Moises de Paula
 
PDF
Minicurso: Python em 4 horas - FATEC SCS 2015
Alan Justino da Silva
 
PDF
Iteraveis e geradores
Luciano Ramalho
 
PDF
Iteraveis e geradores em Python
Luciano Ramalho
 
PDF
Clean Code Matters!
Kewerson Hugo
 
PPT
Prolog 04 - Regras
Fabio Moura Pereira
 
PPTX
Introdução a python
Gemilson George
 
PPT
Aula Prolog - 05
Fabio Moura Pereira
 
PDF
Iniciando em Python
Rober Guerra
 
PPT
Spring Capitulo 03
Diego Pacheco
 
ODP
Shell Tips and Tricks for sysadmin
Magno Torres
 
KEY
Python 3.x - Ihh.. E agora ? Como faço ?
Marcel Caraciolo
 
PDF
Perl Moderno, dia5
garux
 
Resumo Anotacoes Certificacao SCJP 5
Gilberto Holms
 
Python aula 2
Natã Melo
 
Python 04
Bruno Catão
 
Python para quem sabe Python (aula 2)
Luciano Ramalho
 
Python 05
Bruno Catão
 
A Classe StringBuilder em Java
Devmedia
 
Python Class
Romualdo Andre
 
Introdução a programação em python d5 anexo 3 (códigos)
Moises de Paula
 
Minicurso: Python em 4 horas - FATEC SCS 2015
Alan Justino da Silva
 
Iteraveis e geradores
Luciano Ramalho
 
Iteraveis e geradores em Python
Luciano Ramalho
 
Clean Code Matters!
Kewerson Hugo
 
Prolog 04 - Regras
Fabio Moura Pereira
 
Introdução a python
Gemilson George
 
Aula Prolog - 05
Fabio Moura Pereira
 
Iniciando em Python
Rober Guerra
 
Spring Capitulo 03
Diego Pacheco
 
Shell Tips and Tricks for sysadmin
Magno Torres
 
Python 3.x - Ihh.. E agora ? Como faço ?
Marcel Caraciolo
 
Perl Moderno, dia5
garux
 
Anúncio

Destaque (11)

PDF
08 programando em python - recursao
Victor Marcelino
 
PDF
Aprenda computação com python 3.0 (1)
intaum
 
PDF
Experiência no Ensino de Programação com Python
Givanaldo Rocha
 
PDF
Hoje sou um professor feliz: Python no ensino de programação
FATEC São José dos Campos
 
PDF
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
FATEC São José dos Campos
 
PDF
Minicurso de python - CACC UFPA 2010
Diego Damasceno
 
PDF
Lista funcões e recursividade
Anielli Lemes
 
PDF
Como Python está mudando a forma de aprendizagem à distância no Brasil
Marcel Caraciolo
 
PDF
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
Ronne Seles
 
PDF
Lista de exercícios resolvidos
Crishna Irion
 
PDF
Construindo Soluções Científicas com Big Data & MapReduce
Marcel Caraciolo
 
08 programando em python - recursao
Victor Marcelino
 
Aprenda computação com python 3.0 (1)
intaum
 
Experiência no Ensino de Programação com Python
Givanaldo Rocha
 
Hoje sou um professor feliz: Python no ensino de programação
FATEC São José dos Campos
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
FATEC São José dos Campos
 
Minicurso de python - CACC UFPA 2010
Diego Damasceno
 
Lista funcões e recursividade
Anielli Lemes
 
Como Python está mudando a forma de aprendizagem à distância no Brasil
Marcel Caraciolo
 
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
Ronne Seles
 
Lista de exercícios resolvidos
Crishna Irion
 
Construindo Soluções Científicas com Big Data & MapReduce
Marcel Caraciolo
 
Anúncio

Semelhante a Minicurso Básico de Python - PythonDay (20)

PPTX
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
Diogo Gomes
 
PDF
Orientação a objetos em Python (compacto)
Luciano Ramalho
 
PPTX
Programação em Python_6.pptx
zarusca
 
ODP
Python Emsl2009
Julio Cesar Eiras Melanda
 
PDF
aula5 - Manipulação de Strings.pdf
DionatasSantos2
 
DOCX
apostila C++
Augusto Passos
 
PDF
Palestra python
Rony Cruch
 
PDF
Arquivos manipulação entrada saída em java
professordiegocaldei
 
PDF
minicurso-python-getmeeting.pdf
EduardoChicoJooJoo
 
ODP
Linguagem R
Anderson Sanches
 
PDF
Aula 3
Cleyton Fábio
 
PDF
Estrutura de Dados - Características da linguagem C - 1
Adriano Teixeira de Souza
 
ODP
Linguagem C 01 Primeiros Passos
Regis Magalhães
 
PDF
Curso de Python e Django
Osvaldo Santana Neto
 
PPTX
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
Mirlem Pereira
 
PPT
Curso matlab 6 especiais
Josh Santos
 
PPTX
Estrutura de linguagem de programação - Aula 2.pptx
MarceloRosenbrock1
 
PPTX
Algoritmo e lógica de programação - aula 6
engenhariadecomputacao
 
PDF
44087090 tutorial-programacao-batch
Marcio Pereira
 
PDF
01 variaveis io if
Leandro Barbosa
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
Diogo Gomes
 
Orientação a objetos em Python (compacto)
Luciano Ramalho
 
Programação em Python_6.pptx
zarusca
 
Python Emsl2009
Julio Cesar Eiras Melanda
 
aula5 - Manipulação de Strings.pdf
DionatasSantos2
 
apostila C++
Augusto Passos
 
Palestra python
Rony Cruch
 
Arquivos manipulação entrada saída em java
professordiegocaldei
 
minicurso-python-getmeeting.pdf
EduardoChicoJooJoo
 
Linguagem R
Anderson Sanches
 
Estrutura de Dados - Características da linguagem C - 1
Adriano Teixeira de Souza
 
Linguagem C 01 Primeiros Passos
Regis Magalhães
 
Curso de Python e Django
Osvaldo Santana Neto
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
Mirlem Pereira
 
Curso matlab 6 especiais
Josh Santos
 
Estrutura de linguagem de programação - Aula 2.pptx
MarceloRosenbrock1
 
Algoritmo e lógica de programação - aula 6
engenhariadecomputacao
 
44087090 tutorial-programacao-batch
Marcio Pereira
 
01 variaveis io if
Leandro Barbosa
 

Último (7)

PPTX
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
PPTX
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
PPTX
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
PPTX
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
PPTX
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
PDF
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
PDF
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 

Minicurso Básico de Python - PythonDay

  • 1. Minicurso Básico de Python - PythonDay
  • 3. Cronograma ❏ Introdução ao Python ❏ Estruturas de controle e de repetição ❏ Tipos básicos ❏ Funções e arquivos
  • 4. Histórico ❏ Guido van Rossum ❏ Versão 1.0 em 1994 ❏ Principal objetivo ❏ Aumentar a produtividade do programador ❏ Hoje o Python está na versão 3.0
  • 7. Estruturas de Controle e rep. 1. Condições 1.1. if 1.2. else 1.3. elif 2. Repetições 2.1. while 2.2. Contador 2.3. Acumulador 2.4. Interrupção 2.5. for
  • 8. Estruturas de Controle e rep. print (“Olá”) print (“Tudo bem?”) Condições - if
  • 9. Estruturas de Controle e rep. Condições - if
  • 10. Estruturas de Controle e rep. # Ler 2 valores inteiros e imprimir o maior deles. Condições - if a = int(input(“Digite a: ”)) b = int(input(“Digite b: ”)) if a > b: print (“A é o maior!”) if b > a: print (“B é o maior!”)
  • 11. Estruturas de Controle e rep. # Ler 2 valores inteiros e imprimir o maior deles. Condições - else a = int(input(“Digite a: ”)) b = int(input(“Digite b: ”)) if a > b: print (“A é o maior!”) else: print (“B é o maior!”)
  • 12. Estruturas de Controle e rep. # Uma empresa de internet discada cobra R$ 0,20 centavos por pulso, quando a conta vem abaixo de 200 minutos. Entre 200 e 400 min, o preço é de R$ 0,18. Acima de 400 min o preço cai para R$ 0,15. Calcule o preço de uma conta. Condições - Estruturas aninhadas
  • 13. Estruturas de Controle e rep. m = int(input(“Digite m: ”)) if m < 200: preco = 0.20 else: if m <= 400: preco = 0.18 else: preco = 0.15 print (“Conta: %d” % (m*preco)) Condições - Estruturas aninhadas
  • 14. Estruturas de Controle e rep. # A empresa de internet criou uma promoção onde, contas acima de 800 minutos pagam R$ 0,08 o minuto. Condições - Estruturas aninhadas
  • 15. Estruturas de Controle e rep. Condições - Estruturas aninhadas m = int(input(“Digite m: ”)) if m < 200: preco = 0.20 else: if m <= 400: preco = 0.18 else: if m <= 800: preco = 0.15 else: preco = 0.08 print (“Conta: %d” % (m*preco))
  • 16. Estruturas de Controle e rep. # A cláusula elif substitui um else if seguido. Condições - elif m = int(input(“Digite m: ”)) if m < 200: preco = 0.20 elif m <= 400: preco = 0.18 elif m <= 800: preco = 0.15 else: preco = 0.08 print (“Conta: %d” % (m*preco))
  • 17. Estruturas de Controle e rep. Exercícios!
  • 18. Estruturas de Controle e rep. # Imprimindo de 1 a 3 Repetições # Modo Simples print (1) print (2) print (3)
  • 19. Estruturas de Controle e rep. # Imprimindo de 1 a 3 Repetições # Utilizando uma variável x = 1 print (x) x = 2 print (x) x = 3 print (x)
  • 20. Estruturas de Controle e rep. # Imprimindo de 1 a 3 Repetições # Incrementando a variável x = 1 print (x) x = x + 1 print (x) x = x + 1 print (x)
  • 21. Estruturas de Controle e rep. # Imprimindo de 1 a 3 Repetições - while # Usando while x = 1 while x <= 3: print (x) x = x + 1
  • 22. Estruturas de Controle e rep. # Imprimir os números pares entre 0 e um número fornecido usando if. Repetições - Contadores fim = int(input(“Digite um número: ”)) n = 0 while n <= fim: if n % 2 == 0: print (“N: %d” % (n)) n = n + 1
  • 23. Estruturas de Controle e rep. # Cálculo da soma de dez números inteiros. Repetições - Acumulador n = 0 soma = 0 while n < 10: num = int(input(“Digite um número: ”) soma = soma + num n = n + 1 print (“Total: %d” % (soma))
  • 24. Estruturas de Controle e rep. # Calcule a soma dos números inteiros até ser digitado 0 (ZERO). Repetições - Interrupção soma = 0 while True: num = int(input(“Digite um número: ”) if num == 0: break soma = soma + num print (“Total: %d” % (soma))
  • 25. Estruturas de Controle e rep. Repetições - For* for letra in ‘aeiou’: print (letra) >>> a e i o u texto = ‘aeiou’ k = 0 while k < len(texto): letra = texto[k] print (letra) k = k + 1 >>> a e i o u
  • 26. Estruturas de Controle e rep. Exercícios!
  • 27. Tipos básicos 1. Numeros 1.1. int 1.2. float 1.3. complex 2. String 4. Conjuntos 4.1. Lista 4.2. Tupla 4.3. Dicionários 3. Boolean
  • 28. Tipos básicos >>> type(1) <type ‘int’> >>> type(7.5) <type ‘float’> >>> type(1e5) <type ‘float’> >>> type(20+5j) <type ‘complex’> >>> Números
  • 29. Tipos básicos >>> spam = “eggs” >>> type(spam) <type ‘str’> >>> spam + “ bacon” ‘eggs bacon’ >>> spam[0] Traceback (most recent call last): File “<stdin>”, line 1, in <module> TypeError: ‘str’ object does not supprt item assignment Strings
  • 30. Tipos básicos >>> type(True) <type ‘bool’> >>> type(False) <type ‘bool’> >>> bool(0) False >>> bool(0.0) False >>> bool(0+0j) False >>> bool(“”) False >>> bool([]) False >>> bool({}) False >>> bool(()) False Boolean
  • 32. Tipos básicos Listas >>> type([]) <type ‘list’> >>> spam = [‘eggs’, ‘bacon’] >>> spam[0] ‘eggs’ >>> spam[1] = ‘spam’ >>> spam [‘eggs’, ‘spam’] >>> len(spam) 2
  • 33. Tipos básicos Listas >>> spam[2] = 1 Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list assignment index out of range >>> spam.append(1) >>> spam[2] 1 >>> spam [‘eggs’, ‘spam’, 1] >>> len(spam) 3
  • 34. Tipos básicos Tuplas >>> type(()) <type ‘tuple’> >>> spam = (‘eggs’, ‘bacon’) >>> spam[0] ‘eggs’ >>> spam[1] = ‘spam’ Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment
  • 35. Tipos básicos Tuplas >>> spam (‘eggs’, ‘bacon’) >>> spam.append(1) Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'tuple' object has no attribute 'append' >>> spam = spam + (1,) >>> spam (‘eggs’, ‘bacon’, 1)
  • 37. Tipos básicos Dicionário >>> type({}) <type ‘dict’> >>> spam = {‘nome’:’João’,’idade’:32,’apelidos’:[‘jô’, ‘joãozinho’]} >>> spam[nome] ‘João’ >>> spam[idade] = 33 >>> spam {'idade': 33, 'apelidos': ['joão', 'joãozinho'], 'nome': 'João'}
  • 38. Tipos básicos Dicionário >>> spam[‘endereco’] = ‘Rua J’ >>> spam {'idade': 33, 'enderexc3xa7o': 'Rua J', 'apelidos': ['jxc3xb4', 'joxc3xa3ozinho'], 'nome': 'Joxc3xa3o'}
  • 40. Funções e arquivos 1. Funções 1.1. Funções 1.2. Escopo de variável 1.3. Números aleatórios 1. Arquivos 1.1. Leitura e escrita em arquivos.
  • 41. Funções e arquivos # Utilizamos def para definir uma função e return para devolver algum valor. Funções def ehpar(x): return x % 2 == 0 >>> ehpar(20) True >>> ehpar(19) False
  • 42. Funções e arquivos # Defina uma função fatorial Funções def fat(n): f = 1 while n > 0: f = f * n n = n - 1 return f >>> for i in range(3): print( fat(i) ) 1 1 2
  • 43. Funções e arquivos # a = 5 e a = 7 são variáveis diferentes! Funções - Escopo de variáveis a = 5 def muda_e_imprime(): a = 7 print (“a dentro da funcao: %d” %a) print (“antes da funcao: %d” %a) muda_e_imprime() print (“depois da funcao: %d” %a)
  • 44. Funções e arquivos # a = 5 é colocada como global e modificada dentro da função. Funções - Escopo de variáveis a = 5 def muda_e_imprime(): global a a = 7 print (“a dentro da funcao: %d” %a) print (“antes da funcao: %d” %a) muda_e_imprime() print (“depois da funcao: %d” %a)
  • 45. Funções e arquivos # É necessário importar o módulo random Funções - Números aleatórios >>> import random >>> random.randomint(1, 50) 13 >>> nomes = [‘Diego’, ‘Amanda’, ‘Dilan’, ‘Gaby’] >>> random.choice(nomes) ‘Amanda’ >>> random.shuffle(nomes) [‘Amanda’, ‘Gaby’, ‘Dilan’, ‘Diego’]
  • 47. Funções e arquivos # Estes são os principais métodos para a leitura e escrita de um arquivo. Arquivos - principais métodos ❏ read(): como visto acima, retorna uma string única com todo o conteúdo do arquivo. ❏ readline(): retorna a próxima linha do arquivo, e incrementa a posição atual. ❏ readlines(): retorna todo o conteúdo do arquivo em uma lista, uma linha do arquivo por elemento da lista.
  • 48. Funções e arquivos # Estes são os principais métodos para a leitura e escrita de um arquivo. Arquivos - principais métodos ❏ write(data): escreve a string data para o arquivo, na posição atual ou ao final do arquivo, dependendo do modo de abertura. Esta função falha se o arquivo foi aberto com modo `r'. ❏ close(): fecha o arquivo.
  • 49. Funções e arquivos # Estes são os principais métodos para a leitura e escrita de um arquivo. Arquivos - principais métodos arquivo = open('numeros.txt', 'r') for linha in arquivo.readlines(): print(linha) arquivo.close()
  • 51. Conclusões # Curso Python para Zumbis: http://pycursos. com/python-para-zumbis/ # Learn Python the Hard Way: http://learnpythonthehardway.org/ # Python para Desenvolvedores: http://ark4n. wordpress.com/python/ # Documentação:https://www.python.org/ Onde posso aprender mais?
  • 52. Conclusões E os próximos eventos? http://praticasdesoftware.com.br
  • 53. Conclusões E os próximos eventos? http://2014.pythonnordeste.org/