SlideShare uma empresa Scribd logo
Python - Introdução
Apresentação

    Aluno do 4º semestre da graduação em Ciência da
                 Computação da UECE.


Presidente da empresa jr. da Computação da UECE – Acens


          Fábio Cerqueira (fabio@acens.com.br)
Objetivo do Curso
• Mostrar uma “nova” e ótima opções de linguagens
para desenvolvimento;


• Apresentar a linguagem Python, suas facilidades e
sua produtividade;


• Realizar práticas para desenvolver a maneira de
pensar com Python.
O que você já conhece?
Porque Python?
Versão do primeiro programa em C:
#include <stdio.h>
int main() {
       printf(“Hello World!”);
       return 0;
}


Versão do primeiro programa em Python:
print “Hello World!”
                                          “Python é simples e correta.”
Quem usa Python?




Eu o/
Para que se usa Python?
• Educação;

• Desenvolvimento Web;

• Desktop GUIs;

• Acesso a Bases de Dados;

• Computação Numérica e Científica;

• Programação em Rede;

•Jogos e Gráficos 3D;
História do Python

• Criada no natal de 1989;

• Guido Van Rossum;

• Nome não veio da cobra. (Monty Python)

• Influências de ABC, Haskell, C, Perl, SmallTalk,
Modula 3;

• Hoje Guido Van Rossum trabalha na Google.
Características do Python
• Interpretada;

• Portável(Multi-plataforma);

• Extensível (C, Java, .NET);

• Livre;

• Tudo é objeto em Python;

• Multiparadigma: Procedural, Orientada a objetos,
Funcional;

• Case-sensitive;
Características do Python II

• Simples e Legível;

• Suporte nativo a estrutura de dados de alto nível;

• Sem declaração de variáveis;

• Tipagem Forte e Dinâmica;

• Controle de escopo por indentação.
Download e instalação do Python

• Download no site oficial: http://www.python.org/download/


• Versão usada no curso: 2.5 (python-2.5.msi)


• Versão em desenvolvimento: beta 2.6 e 3.0
Instalação do Python
Instalação do Python
Instalação do Python
O Shell interativo
Configurando Windows
Hello World!
Usando o IDLE

• Opção para auto completar o código;

• Opção de debug;

• Sintaxe colorida;

• Editor além do Shell;

• Outras muitas opções;

• E ainda é mais bonito. =D
O IDLE
“Tipos primitivos”
Variáveis

• Fortemente tipada;


• Tipagem dinâmica;


• Tudo é objeto;


• Não é necessário declarar.
Conhecendo outros tipos
Conversão automática de int para long:
Conhecendo outros tipos
                               O que é falso para Python?


Tipo bool representa valores
lógicos 0 e 1
Complex? O.o
Python vem com o tipo para representar números complexos.
Tudo é objeto
As variáveis podem ser iniciadas da forma já mostrada ou com
uso de construtores.




O construtor do tipo int possui opção de escolha da base.
Atribuição mutua
Troca-troca de valores.




 A atribuição mutua é conseqüência da atribuição múltipla.
Strings. E o tipo char?
• É, Python não tem tipo char =/
• Isso é um problema?




• Aspa simples ou aspa dupla podem ser usadas nas strings.
Operadores
Operadores aritméticos
Mais Operadores
Operadores de comparação



                           Existem outros operadores
                           usados para comparação,
                           futuramente citarei mais
                           alguns e outros você
                           conhecerá com a prática.
Mais Operadores
Operadores lógicos




Operadores lógicos são usados principalmente junto com
estruturas de controle que veremos neste curso.
Mais Operadores
Operadores de bitwise
Voltando às strings
Strings são seqüências(Tira ou não o trema?) especiais do
python.
• Operações mágicas sobre string.(Slices)
Operadores para string
Python oferece alguns operadores para trabalhar com
string.
Operadores para string
Tipos especiais de string
Fugindo dos caracteres especiais.




 O r no início da string indica que os ... não
 serão interpretados como especiais.
Tipos especiais de string
São as strings de múltiplas linhas.




 Inicia a string com ””” e finaliza com ”””
Tipos especiais de string
Tipo especial Unicode.
Métodos do objeto str
Métodos do objeto str
Existem vários métodos para string. Abaixo alguns:
Documentação interativa
Python possui uma documentação interativa que ajuda bastante o
programador. Como não mostrarei todos os métodos do tipo str veja
uma maneira simples de aprender.




                                                    O comando help()
                                                    mostra a
                                                    documentação
                                                    para o objeto
                                                    passado como
                                                    parâmetro.
Documentação interativa
  Não é preciso acessar a documentação de toda a classe para estudar
  só um método.




Documentação para o método find() da classe str
Comandos
Em Python existem comandos nativos bastante úteis, alguns já
foram usados nesta aula.
O comando em python tem o seguinte formato:
nome([parm1,parm3,parm4,parm5...])
Mais comandos
Mais comandos




Existem outros comandos importantes que serão
vistos durante o curso.
Entrada de dados
Em modo console para receber dados do usuário de forma interativa
o Python aceita basicamente dois comandos. input() e raw_input()




Observe e diga porque em um deles foi usado raw_input() e no outro
input()
raw_input ou input
 Observe outro exemplo:




Ao tentarmos receber uma string com input não foi possível salvar o
dado na variável cor.




Note que o valor atribuído a cor foi o valor que havia sido salvo na
variável verde.
raw_input ou input
O mesmo exemplo da cor com o comando raw_input():




 Note que o valor atribuído a cor foi exatamente a string digitada.
 E se eu quiser que seja o valor da variável verde? O que fazer?




 O comando eval faz a “mágica” o
O comando eval()
Entendendo melhor o comando eval()




O eval retorna o resultado da interpretação da string passada que
representa uma expressão Python.


Para ver mais use a documentação interativa. help(eval)
“Sim... E aí?”
• Podemos chegar a conclusão que usar input() é o
mesmo que usar eval(raw_input());


• Que raw_input() retorna uma string;


• E que o uso vai depender muito em que situação vai
ser usada.
Controle de fluxo
Observe o exemplo:
if e else em C
Controle de escopo
Observe que o código em python não usa { } para controle de
escopo. E muito menos begin e end como em outra linguagens.




 • O único indicador de início de escopo são os dois pontos “:”
 • O bloco será identificados pelas indentação.


 O comandos pass usado acima não faz nada =D
Switch
Quem já usou Switch para controle de tomada de decisão
em um código?




Legal... Python não tem... =/
elif
 elif é usado em situações que existem mais de dois
 caminhos para uma avaliação.




Para quem sente falta do switch o elif pode ser usado para as mesmas
coisas.
Condicional de uma linha
Sintaxe:
VALORVERDADE if condicao else VALORFALSO
Em outra linguagens isso é bem mais bonito.
Exemplo:
Estrutura de repetição
As estruturas de repetição em Python são: for e while

while
Observe o exemplo:




Assim como todo bloco de comandos em Python, aqui o controle de
Escopo também é feito por indentação.
Continuando while
O while em Python é muito comum em relação a mesma estrutura em
outras linguagens.
 Sintaxe:
 while condicao:
            <bloco de comandos>
 else:
            <bloco de comandos>


Heim? O.o else no while? O.O Ooooooooooh!
A grande diferença do while do python para outras linguagens.
break
Python possui a instrução break.
Veja o exemplo:




A instrução break interrompe o laço realizando uma para abrupta dele e
finalizando sua execução.
continue
Python possui também a instrução continue
Veja o exemplo:




A instrução continue termina a interação atual do laço voltando para
checagem de condição.
E o else, homi?
O else em laços é executado caso não seja executada uma interrupção
feita pela instrução break.
Exemplo:




Como o valor digitado no exemplo foi 999 não irá executar o break, logo
o bloco do else foi executado.
for
O for encontrado na linguagem Python é diferente do for de
Java,C,PHP,C#...
Ele é parecido com foreach do PHP e C#.
Sintaxe:
for var in iterable:
           <comandos do for>
else:
           <comandos do else>


Assim como no while o for também possui o bloco else e funciona da
mesma maneira.
Entendendo o for
Nada melhor que um exemplo:




O for em Python “varre” toda a sequência(empresa) e guarda o valor na
variável(letra) em cada interação. Outro exemplo:
E se eu quiser fazer como um for normal?

Comparação do for em C e Python
  C                                    Python




 O comando range() gera uma sequência(lista) de inteiros. help(range)
 C                                      Python




Exibindo os pares de 50 até 99 com o a variável incrementando de 2 em 2.

Mais conteúdo relacionado

Mais procurados

Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
Luciano Ramalho
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
Leinylson Fontinele
 
Aula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveisAula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveis
Luiz Augusto Macêdo Morais
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
Jorge Ávila Miranda
 
Trabalho linguagem python
Trabalho linguagem  pythonTrabalho linguagem  python
Trabalho linguagem python
Bruno Maspoli
 
Excel Básico
Excel BásicoExcel Básico
Excel Básico
aprcds
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
Mauro Pereira
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
Priscila Mayumi
 
Algoritmos
AlgoritmosAlgoritmos
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
Marcos Gregorio
 
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores AritméticosAula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Messias Batista
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
rodfernandes
 
Exercício 1 powerpoint
Exercício 1 powerpointExercício 1 powerpoint
Exercício 1 powerpoint
Carlos Melo
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alves
Grupython Ufla
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
Gercélia Ramos
 
Algoritmos - capítulo 1
Algoritmos - capítulo 1Algoritmos - capítulo 1
Algoritmos - capítulo 1
Carlos Padilla Severo
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
Silvano Oliveira
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
Felipe J. R. Vieira
 
Algoritmos: Tipos de Dados
Algoritmos: Tipos de DadosAlgoritmos: Tipos de Dados
Algoritmos: Tipos de Dados
Elaine Cecília Gatto
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
Mario Sergio
 

Mais procurados (20)

Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
Aula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveisAula 6 - Constantes e variáveis
Aula 6 - Constantes e variáveis
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Trabalho linguagem python
Trabalho linguagem  pythonTrabalho linguagem  python
Trabalho linguagem python
 
Excel Básico
Excel BásicoExcel Básico
Excel Básico
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Linguagem de programação
Linguagem de programação Linguagem de programação
Linguagem de programação
 
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores AritméticosAula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
Aula 02 - Tipos de dados, Variáveis, Constantes e Operadores Aritméticos
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Exercício 1 powerpoint
Exercício 1 powerpointExercício 1 powerpoint
Exercício 1 powerpoint
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alves
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
 
Algoritmos - capítulo 1
Algoritmos - capítulo 1Algoritmos - capítulo 1
Algoritmos - capítulo 1
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Algoritmos: Tipos de Dados
Algoritmos: Tipos de DadosAlgoritmos: Tipos de Dados
Algoritmos: Tipos de Dados
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 

Semelhante a Python - Introdução

Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)
Marcelo Barros de Almeida
 
Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
Gleison Rodrigues
 
Canivete suíço do Python
Canivete suíço do PythonCanivete suíço do Python
Canivete suíço do Python
Douglas Soares de Andrade
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
guestac3de
 
Python para Desenvolvedores
Python para DesenvolvedoresPython para Desenvolvedores
Python para Desenvolvedores
Wellington Oliveira
 
Administração de sistemas usando Python
Administração de sistemas usando PythonAdministração de sistemas usando Python
Administração de sistemas usando Python
Helio Loureiro
 
Python_2018-03-02-MC102KLMN-Aula02.pdf
Python_2018-03-02-MC102KLMN-Aula02.pdfPython_2018-03-02-MC102KLMN-Aula02.pdf
Python_2018-03-02-MC102KLMN-Aula02.pdf
Valter moreira
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
rodrigopex
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Alvaro Oliveira
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
Helio Colombe
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação Python
Junior Sobrenome
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
Tiago
 
Introdução à linguagem python
Introdução à linguagem pythonIntrodução à linguagem python
Introdução à linguagem python
Luiz Vieira .´. CISSP, OSCE, GXPN, CEH
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6
Fabio Spanhol
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Flávio Ribeiro
 
Python django7semestre
Python django7semestre Python django7semestre
Python django7semestre
Denis Vieira
 
Desenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonDesenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando Python
Flávio Ribeiro
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6
Fabio Spanhol
 
Python for zombies (very basic level)
Python for zombies (very basic level)Python for zombies (very basic level)
Python for zombies (very basic level)
FATEC São José dos Campos
 
Aula2 ambientação a linguagem deprogramação python
Aula2   ambientação a linguagem deprogramação pythonAula2   ambientação a linguagem deprogramação python
Aula2 ambientação a linguagem deprogramação python
Cleyton Fábio
 

Semelhante a Python - Introdução (20)

Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)
 
Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
 
Canivete suíço do Python
Canivete suíço do PythonCanivete suíço do Python
Canivete suíço do Python
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
 
Python para Desenvolvedores
Python para DesenvolvedoresPython para Desenvolvedores
Python para Desenvolvedores
 
Administração de sistemas usando Python
Administração de sistemas usando PythonAdministração de sistemas usando Python
Administração de sistemas usando Python
 
Python_2018-03-02-MC102KLMN-Aula02.pdf
Python_2018-03-02-MC102KLMN-Aula02.pdfPython_2018-03-02-MC102KLMN-Aula02.pdf
Python_2018-03-02-MC102KLMN-Aula02.pdf
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação Python
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Introdução à linguagem python
Introdução à linguagem pythonIntrodução à linguagem python
Introdução à linguagem python
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
 
Python django7semestre
Python django7semestre Python django7semestre
Python django7semestre
 
Desenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando PythonDesenvolvimento de aplicações embarcadas utilizando Python
Desenvolvimento de aplicações embarcadas utilizando Python
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6
 
Python for zombies (very basic level)
Python for zombies (very basic level)Python for zombies (very basic level)
Python for zombies (very basic level)
 
Aula2 ambientação a linguagem deprogramação python
Aula2   ambientação a linguagem deprogramação pythonAula2   ambientação a linguagem deprogramação python
Aula2 ambientação a linguagem deprogramação python
 

Python - Introdução

  • 2. Apresentação Aluno do 4º semestre da graduação em Ciência da Computação da UECE. Presidente da empresa jr. da Computação da UECE – Acens Fábio Cerqueira (fabio@acens.com.br)
  • 3. Objetivo do Curso • Mostrar uma “nova” e ótima opções de linguagens para desenvolvimento; • Apresentar a linguagem Python, suas facilidades e sua produtividade; • Realizar práticas para desenvolver a maneira de pensar com Python.
  • 4. O que você já conhece?
  • 5. Porque Python? Versão do primeiro programa em C: #include <stdio.h> int main() { printf(“Hello World!”); return 0; } Versão do primeiro programa em Python: print “Hello World!” “Python é simples e correta.”
  • 7. Para que se usa Python? • Educação; • Desenvolvimento Web; • Desktop GUIs; • Acesso a Bases de Dados; • Computação Numérica e Científica; • Programação em Rede; •Jogos e Gráficos 3D;
  • 8. História do Python • Criada no natal de 1989; • Guido Van Rossum; • Nome não veio da cobra. (Monty Python) • Influências de ABC, Haskell, C, Perl, SmallTalk, Modula 3; • Hoje Guido Van Rossum trabalha na Google.
  • 9. Características do Python • Interpretada; • Portável(Multi-plataforma); • Extensível (C, Java, .NET); • Livre; • Tudo é objeto em Python; • Multiparadigma: Procedural, Orientada a objetos, Funcional; • Case-sensitive;
  • 10. Características do Python II • Simples e Legível; • Suporte nativo a estrutura de dados de alto nível; • Sem declaração de variáveis; • Tipagem Forte e Dinâmica; • Controle de escopo por indentação.
  • 11. Download e instalação do Python • Download no site oficial: http://www.python.org/download/ • Versão usada no curso: 2.5 (python-2.5.msi) • Versão em desenvolvimento: beta 2.6 e 3.0
  • 18. Usando o IDLE • Opção para auto completar o código; • Opção de debug; • Sintaxe colorida; • Editor além do Shell; • Outras muitas opções; • E ainda é mais bonito. =D
  • 21. Variáveis • Fortemente tipada; • Tipagem dinâmica; • Tudo é objeto; • Não é necessário declarar.
  • 22. Conhecendo outros tipos Conversão automática de int para long:
  • 23. Conhecendo outros tipos O que é falso para Python? Tipo bool representa valores lógicos 0 e 1
  • 24. Complex? O.o Python vem com o tipo para representar números complexos.
  • 25. Tudo é objeto As variáveis podem ser iniciadas da forma já mostrada ou com uso de construtores. O construtor do tipo int possui opção de escolha da base.
  • 26. Atribuição mutua Troca-troca de valores. A atribuição mutua é conseqüência da atribuição múltipla.
  • 27. Strings. E o tipo char? • É, Python não tem tipo char =/ • Isso é um problema? • Aspa simples ou aspa dupla podem ser usadas nas strings.
  • 29. Mais Operadores Operadores de comparação Existem outros operadores usados para comparação, futuramente citarei mais alguns e outros você conhecerá com a prática.
  • 30. Mais Operadores Operadores lógicos Operadores lógicos são usados principalmente junto com estruturas de controle que veremos neste curso.
  • 32. Voltando às strings Strings são seqüências(Tira ou não o trema?) especiais do python. • Operações mágicas sobre string.(Slices)
  • 33. Operadores para string Python oferece alguns operadores para trabalhar com string.
  • 35. Tipos especiais de string Fugindo dos caracteres especiais. O r no início da string indica que os ... não serão interpretados como especiais.
  • 36. Tipos especiais de string São as strings de múltiplas linhas. Inicia a string com ””” e finaliza com ”””
  • 37. Tipos especiais de string Tipo especial Unicode.
  • 39. Métodos do objeto str Existem vários métodos para string. Abaixo alguns:
  • 40. Documentação interativa Python possui uma documentação interativa que ajuda bastante o programador. Como não mostrarei todos os métodos do tipo str veja uma maneira simples de aprender. O comando help() mostra a documentação para o objeto passado como parâmetro.
  • 41. Documentação interativa Não é preciso acessar a documentação de toda a classe para estudar só um método. Documentação para o método find() da classe str
  • 42. Comandos Em Python existem comandos nativos bastante úteis, alguns já foram usados nesta aula. O comando em python tem o seguinte formato: nome([parm1,parm3,parm4,parm5...])
  • 44. Mais comandos Existem outros comandos importantes que serão vistos durante o curso.
  • 45. Entrada de dados Em modo console para receber dados do usuário de forma interativa o Python aceita basicamente dois comandos. input() e raw_input() Observe e diga porque em um deles foi usado raw_input() e no outro input()
  • 46. raw_input ou input Observe outro exemplo: Ao tentarmos receber uma string com input não foi possível salvar o dado na variável cor. Note que o valor atribuído a cor foi o valor que havia sido salvo na variável verde.
  • 47. raw_input ou input O mesmo exemplo da cor com o comando raw_input(): Note que o valor atribuído a cor foi exatamente a string digitada. E se eu quiser que seja o valor da variável verde? O que fazer? O comando eval faz a “mágica” o
  • 48. O comando eval() Entendendo melhor o comando eval() O eval retorna o resultado da interpretação da string passada que representa uma expressão Python. Para ver mais use a documentação interativa. help(eval)
  • 49. “Sim... E aí?” • Podemos chegar a conclusão que usar input() é o mesmo que usar eval(raw_input()); • Que raw_input() retorna uma string; • E que o uso vai depender muito em que situação vai ser usada.
  • 51. if e else em C
  • 52. Controle de escopo Observe que o código em python não usa { } para controle de escopo. E muito menos begin e end como em outra linguagens. • O único indicador de início de escopo são os dois pontos “:” • O bloco será identificados pelas indentação. O comandos pass usado acima não faz nada =D
  • 53. Switch Quem já usou Switch para controle de tomada de decisão em um código? Legal... Python não tem... =/
  • 54. elif elif é usado em situações que existem mais de dois caminhos para uma avaliação. Para quem sente falta do switch o elif pode ser usado para as mesmas coisas.
  • 55. Condicional de uma linha Sintaxe: VALORVERDADE if condicao else VALORFALSO Em outra linguagens isso é bem mais bonito. Exemplo:
  • 56. Estrutura de repetição As estruturas de repetição em Python são: for e while while Observe o exemplo: Assim como todo bloco de comandos em Python, aqui o controle de Escopo também é feito por indentação.
  • 57. Continuando while O while em Python é muito comum em relação a mesma estrutura em outras linguagens. Sintaxe: while condicao: <bloco de comandos> else: <bloco de comandos> Heim? O.o else no while? O.O Ooooooooooh! A grande diferença do while do python para outras linguagens.
  • 58. break Python possui a instrução break. Veja o exemplo: A instrução break interrompe o laço realizando uma para abrupta dele e finalizando sua execução.
  • 59. continue Python possui também a instrução continue Veja o exemplo: A instrução continue termina a interação atual do laço voltando para checagem de condição.
  • 60. E o else, homi? O else em laços é executado caso não seja executada uma interrupção feita pela instrução break. Exemplo: Como o valor digitado no exemplo foi 999 não irá executar o break, logo o bloco do else foi executado.
  • 61. for O for encontrado na linguagem Python é diferente do for de Java,C,PHP,C#... Ele é parecido com foreach do PHP e C#. Sintaxe: for var in iterable: <comandos do for> else: <comandos do else> Assim como no while o for também possui o bloco else e funciona da mesma maneira.
  • 62. Entendendo o for Nada melhor que um exemplo: O for em Python “varre” toda a sequência(empresa) e guarda o valor na variável(letra) em cada interação. Outro exemplo:
  • 63. E se eu quiser fazer como um for normal? Comparação do for em C e Python C Python O comando range() gera uma sequência(lista) de inteiros. help(range) C Python Exibindo os pares de 50 até 99 com o a variável incrementando de 2 em 2.