35
Tecnologia em Sistemas para Internet - IFMS Vamos aprender algo diferente? Introdução à linguagem Python (aula 1) Tópicos em Programação Prof.º Msc. Sidney Roberto de Sousa [email protected]

Aula básica de linguagem Python

Embed Size (px)

DESCRIPTION

Breve introdução à linguagem de programação Python.

Citation preview

Page 1: Aula básica de linguagem Python

Tecnologia em Sistemas para Internet - IFMS

Vamos aprender algo diferente?Introdução à linguagem Python (aula 1)

Tópicos em ProgramaçãoProf.º Msc. Sidney Roberto de Sousa

[email protected]

Page 2: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 2

O que veremos nesta aula?

● O que é Python?● Porquê Python?● Hands on: Instalação e configuração● Hands on: Escrevendo programas em Python

Page 3: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 3

O que é Python?

Page 4: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 4

O que é Python?

● Linguagem de programação criada por Guido van Rossum

● Python é uma linguagem de alto nível● Python é multiparadigma

– Programação funcional

– Programação imperativa

– Programação orientada a objetos

● Python é uma linguagem dinâmica● Pode ser utilizada como linguagem de script

Page 5: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 5

Princípios (PEP 20 - The Zen of Python)

● Bonito é melhor que feio● Explícito é melhor que implícito● Simples é melhor que complexo● Complexo é melhor que complicado● Legibilidade é importante!

Page 6: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 6

Porquê Python?

● Linguagem de propósito geral● Multiplataforma e multiparadigma● Fácil legibilidade● Curva de aprendizado baixa● Foco na produtividade → entregue mais cedo!

Page 7: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 7

Índice TIOBE (Abril/2013)

Page 8: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 8

Quem usa Python?

Page 9: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 9

Chega de conversa!

Vamos trabalhar?

Page 10: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 10

Hands on: Instalação e configuração

Page 11: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 11

Download

http://www.python.org/getit/

Page 12: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 12

Configuração: Windows

Para poder executar o Python dentro de qualquer diretório via linha de comando,

adicione o caminho da pasta bin (localizada dentro da pasta da instalação do Python) na

variável de ambiente Path

Page 13: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 13

Instalando bibliotecas

Para instalar um novo componente/biblioteca para utilizar em seus programas escritos em

Python, é necessário instalar a ferramenta pip

Page 14: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 14

Instalando o pip no Windows

● Faça o download da última versão do pip neste link: https://pypi.python.org/pypi/pip#downloads

● Descomprima a pasta do pip

● Faça o download do easy installer para o Windows no link a seguir e o instale: https://pypi.python.org/pypi/setuptools

● No prompt do MS-DOS, entre na pasta do pip e execute o comando abaixo:

python setup.py install

Page 15: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 15

Instalando o pip no Ubuntu

No shell, digite o comando abaixo:

sudo apt-get install python-pip

Page 16: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 16

Instalando novos componentes

● Para instalar um novo componente, use o pip em linha de comando.

● Ex.:O comando abaixo instala o componente Beautiful Soup:

pip install beautifulsoup

Page 17: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 17

Tudo configurado! Vamos programar?

Page 18: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 18

Hands on: Escrevendo programas em Python

Page 19: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 19

Usando o shell do Python

$ python

Python 2.7.4 (default, Apr 19 2013, 18:28:01) 

[GCC 4.7.3] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> 1+1

2

>>>'Repetindo o texto 3 vezes' * 3

'Repetindo o texto 3 vezes Repetindo o texto 3 vezes Repetindo o texto 3 vezes '

Page 20: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 20

Escrevendo scripts

● Escreva o seu programa Python em seu editor de texto preferido

● Salve o seu script com a extensão .py● Execute o seu script no shell com o comando

python:

python NOME_DO_SCRIPT.py

Page 21: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 21

A seguir, alguns exemplos!

Page 22: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 22

Imprimindo uma mensagem na tela

print 'Primeiro programa em Python!'

Page 23: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 23

Repetindo mensagens na tela

print 'Imprimindo esta linha 3 vezes\n' * 3

Page 24: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 24

Imprimindo caracteres especiais

# Esta frase foi comentada!

# coding=utf­8

# A linha acima serve para permitir 

#o uso de caracteres especiais no 

#script

print 'Olá mundo!á$üçêõ'

Page 25: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 25

Declarando variáveis

variavel = 4

print variavel

variavel = 'Professor Sidney'

print variavel

variavel = True

print variavel

Page 26: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 26

Operações matemáticas

# coding=utf­8

numero = 54

outro_numero = numero ** numero # Exponenciação

# Python lida muito bem com números

# de alta precisão!

# Imprime o valor: 

# 3542118045010639240328481337533320712639808638036812473211109743262552383710557968252383789056

print outro_numero

outro_numero ­= 1

# Imprime o valor: 

# 3542118045010639240328481337533320712639808638036812473211109743262552383710557968252383789055

print outro_numero

outro_numero = numero * 3 + (­numero)

print outro_numero # 108

outro_numero = (outro_numero * 1.0) / 9374561724139

print outro_numero # 1.15205385786e­11

Page 27: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 27

Operações lógicas

condicao1 = True

condicao2 = False

resultado = condicao1 and condicao2

print resultado # False

resultado = condicao1 or condicao2

print resultado # True

resultado = condicao1 and not condicao2

print resultado # True

resultado = condicao1 and not(False or condicao1) and not condicao2

print resultado # False

Page 28: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 28

Sequência de Fibonacci (usando um laço for)

# coding=utf­8

numero = 1

anterior = 0

quantidade_numeros = 10

for _ in range(quantidade_numeros):

    # A identação é obrigatória!

    print '%d '%numero,

    aux = numero

    numero += anterior

    anterior = aux

Page 29: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 29

Sequência de Fibonacci (usando um laço while)

numero = 1

anterior = 0

quantidade_numeros = 10

contador = 0

while contador < quantidade_numeros:

    print '%d '%numero,    aux = numero

    numero += anterior

    anterior = aux

    contador += 1

Page 30: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 30

Controlando o fluxo de execução

# coding=utf­8

lista = range(10) 

for numero in lista:    numero += 1

    if numero % 2 == 0:

        print '%d é par'%numero

    elif numero % 3 == 0:

        print '%d é divisível por 3'%numero

    else:

        print '%d é ímpar e não divisível por 3'%numero

Page 31: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 31

Controlando o fluxo de execução

# coding=utf­8

lista = range(10) 

for numero in lista:

    numero += 1

    print "%d é par"%numero if numero % 2 == 0 else "%d é ímpar"%numero

Page 32: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 32

Lendo uma string do usuário

frase = raw_input("Digite uma frase: ")

print frase

Page 33: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 33

Lendo um número do usuário

# coding=utf­8

numero = raw_input("Digite um número: ")

if numero.isdigit():

    print "Número digitado: %s"%numero

else:

    print "O valor digitado não é um número!"

Page 34: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 34

… to be continued!

Page 35: Aula básica de linguagem Python

Tec. em Sistemas para Internet - IFMS 35

Links de referência

Python: Cabe no seu bolso, no seu micro, no seu cérebro. Disponível em http://www.slideshare.net/rodsenra/unicampago2010pdf. Acessado em 28 de abril de 2013.

Python (programming language): Which Internet companies use Python. Disponível em http://www.quora.com/Python-programming-language-1/Which-Internet-companies-use-Python. Acessado em 28 de abril de 2013.

Python Sucess Stories. Disponível em http://www.python.org/about/success/. Acessado em 28 de abril de 2013.