SlideShare a Scribd company logo
1 of 53
Download to read offline
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/

More Related Content

What's hot

Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
Luciano Ramalho
 
Introdução a programação em python d5 anexo 3 (códigos)
Introdução a programação em python d5   anexo 3 (códigos)Introdução a programação em python d5   anexo 3 (códigos)
Introdução a programação em python d5 anexo 3 (códigos)
Moises de Paula
 

What's hot (20)

Resumo Anotacoes Certificacao SCJP 5
Resumo Anotacoes Certificacao SCJP 5Resumo Anotacoes Certificacao SCJP 5
Resumo Anotacoes Certificacao SCJP 5
 
Python aula 2
Python aula 2Python aula 2
Python aula 2
 
Python 04
Python 04Python 04
Python 04
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
 
Python 05
Python 05Python 05
Python 05
 
A Classe StringBuilder em Java
A Classe StringBuilder em JavaA Classe StringBuilder em Java
A Classe StringBuilder em Java
 
Python Class
Python ClassPython Class
Python Class
 
Introdução a programação em python d5 anexo 3 (códigos)
Introdução a programação em python d5   anexo 3 (códigos)Introdução a programação em python d5   anexo 3 (códigos)
Introdução a programação em python d5 anexo 3 (códigos)
 
Minicurso: Python em 4 horas - FATEC SCS 2015
Minicurso: Python em 4 horas - FATEC SCS 2015 Minicurso: Python em 4 horas - FATEC SCS 2015
Minicurso: Python em 4 horas - FATEC SCS 2015
 
Iteraveis e geradores
Iteraveis e geradoresIteraveis e geradores
Iteraveis e geradores
 
Iteraveis e geradores em Python
Iteraveis e geradores em PythonIteraveis e geradores em Python
Iteraveis e geradores em Python
 
Clean Code Matters!
Clean Code Matters!Clean Code Matters!
Clean Code Matters!
 
Prolog 04 - Regras
Prolog 04 - RegrasProlog 04 - Regras
Prolog 04 - Regras
 
Introdução a python
Introdução a pythonIntrodução a python
Introdução a python
 
Aula Prolog - 05
Aula Prolog - 05Aula Prolog - 05
Aula Prolog - 05
 
Iniciando em Python
Iniciando em PythonIniciando em Python
Iniciando em Python
 
Spring Capitulo 03
Spring Capitulo 03Spring Capitulo 03
Spring Capitulo 03
 
Shell Tips and Tricks for sysadmin
Shell Tips and Tricks for sysadminShell Tips and Tricks for sysadmin
Shell Tips and Tricks for sysadmin
 
Python 3.x - Ihh.. E agora ? Como faço ?
Python 3.x - Ihh.. E agora ? Como faço ?Python 3.x - Ihh.. E agora ? Como faço ?
Python 3.x - Ihh.. E agora ? Como faço ?
 
Perl Moderno, dia5
Perl Moderno, dia5Perl Moderno, dia5
Perl Moderno, dia5
 

Viewers also liked

08 programando em python - recursao
 08   programando em python - recursao 08   programando em python - recursao
08 programando em python - recursao
Victor Marcelino
 
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
Ronne Seles
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
Crishna Irion
 

Viewers also liked (11)

08 programando em python - recursao
 08   programando em python - recursao 08   programando em python - recursao
08 programando em python - recursao
 
Aprenda computação com python 3.0 (1)
Aprenda computação com python 3.0 (1)Aprenda computação com python 3.0 (1)
Aprenda computação com python 3.0 (1)
 
Experiência no Ensino de Programação com Python
Experiência no Ensino de Programação com PythonExperiência no Ensino de Programação com Python
Experiência no Ensino de Programação com Python
 
Hoje sou um professor feliz: Python no ensino de programação
Hoje sou um professor feliz: Python no ensino de programaçãoHoje sou um professor feliz: Python no ensino de programação
Hoje sou um professor feliz: Python no ensino de programação
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaPepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
 
Minicurso de python - CACC UFPA 2010
Minicurso de python - CACC UFPA 2010Minicurso de python - CACC UFPA 2010
Minicurso de python - CACC UFPA 2010
 
Lista funcões e recursividade
Lista funcões e recursividadeLista funcões e recursividade
Lista funcões e recursividade
 
Como Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no BrasilComo Python está mudando a forma de aprendizagem à distância no Brasil
Como Python está mudando a forma de aprendizagem à distância no Brasil
 
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
402 macroeconomia-i-caderno-de-exercicios-para-exame-resolvidos
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Construindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduceConstruindo Soluções Científicas com Big Data & MapReduce
Construindo Soluções Científicas com Big Data & MapReduce
 

Similar to Minicurso Básico de Python - PythonDay

Programação em Python_6.pptx
Programação em Python_6.pptxProgramação em Python_6.pptx
Programação em Python_6.pptx
zarusca
 
Palestra python
Palestra pythonPalestra python
Palestra python
Rony Cruch
 
Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1
Adriano Teixeira de Souza
 
Linguagem C 01 Primeiros Passos
Linguagem C 01 Primeiros PassosLinguagem C 01 Primeiros Passos
Linguagem C 01 Primeiros Passos
Regis Magalhães
 
Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6
engenhariadecomputacao
 
44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch
Marcio Pereira
 

Similar to Minicurso Básico de Python - PythonDay (20)

IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
 
Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)
 
Programação em Python_6.pptx
Programação em Python_6.pptxProgramação em Python_6.pptx
Programação em Python_6.pptx
 
Python Emsl2009
Python Emsl2009Python Emsl2009
Python Emsl2009
 
aula5 - Manipulação de Strings.pdf
aula5 -  Manipulação de Strings.pdfaula5 -  Manipulação de Strings.pdf
aula5 - Manipulação de Strings.pdf
 
apostila C++
apostila C++apostila C++
apostila C++
 
Palestra python
Palestra pythonPalestra python
Palestra python
 
minicurso-python-getmeeting.pdf
minicurso-python-getmeeting.pdfminicurso-python-getmeeting.pdf
minicurso-python-getmeeting.pdf
 
Linguagem R
Linguagem RLinguagem R
Linguagem R
 
Aula 3
Aula 3Aula 3
Aula 3
 
Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1Estrutura de Dados - Características da linguagem C - 1
Estrutura de Dados - Características da linguagem C - 1
 
Linguagem C 01 Primeiros Passos
Linguagem C 01 Primeiros PassosLinguagem C 01 Primeiros Passos
Linguagem C 01 Primeiros Passos
 
Curso de Python e Django
Curso de Python e DjangoCurso de Python e Django
Curso de Python e Django
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 
Curso matlab 6 especiais
Curso matlab 6 especiaisCurso matlab 6 especiais
Curso matlab 6 especiais
 
Estrutura de linguagem de programação - Aula 2.pptx
Estrutura de linguagem de programação - Aula 2.pptxEstrutura de linguagem de programação - Aula 2.pptx
Estrutura de linguagem de programação - Aula 2.pptx
 
Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6Algoritmo e lógica de programação - aula 6
Algoritmo e lógica de programação - aula 6
 
44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch44087090 tutorial-programacao-batch
44087090 tutorial-programacao-batch
 
01 variaveis io if
01 variaveis io if01 variaveis io if
01 variaveis io if
 
Apostila rpira
Apostila rpiraApostila rpira
Apostila rpira
 

Minicurso Básico de Python - PythonDay

  • 1. Minicurso Básico de Python - PythonDay
  • 2. Apresentação Diego Leite Dilan Nery dnerylopes@gmail.comdiegojleite@gmail.com
  • 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/