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
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
Tec. em Sistemas para Internet - IFMS 3
O que é 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
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!
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!
Tec. em Sistemas para Internet - IFMS 7
Índice TIOBE (Abril/2013)
Tec. em Sistemas para Internet - IFMS 8
Quem usa Python?
Tec. em Sistemas para Internet - IFMS 9
Chega de conversa!
Vamos trabalhar?
Tec. em Sistemas para Internet - IFMS 10
Hands on: Instalação e configuração
Tec. em Sistemas para Internet - IFMS 11
Download
http://www.python.org/getit/
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
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
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
Tec. em Sistemas para Internet - IFMS 15
Instalando o pip no Ubuntu
No shell, digite o comando abaixo:
sudo apt-get install python-pip
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
Tec. em Sistemas para Internet - IFMS 17
Tudo configurado! Vamos programar?
Tec. em Sistemas para Internet - IFMS 18
Hands on: Escrevendo programas em 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 '
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
Tec. em Sistemas para Internet - IFMS 21
A seguir, alguns exemplos!
Tec. em Sistemas para Internet - IFMS 22
Imprimindo uma mensagem na tela
print 'Primeiro programa em Python!'
Tec. em Sistemas para Internet - IFMS 23
Repetindo mensagens na tela
print 'Imprimindo esta linha 3 vezes\n' * 3
Tec. em Sistemas para Internet - IFMS 24
Imprimindo caracteres especiais
# Esta frase foi comentada!
# coding=utf8
# A linha acima serve para permitir
#o uso de caracteres especiais no
#script
print 'Olá mundo!á$üçêõ'
Tec. em Sistemas para Internet - IFMS 25
Declarando variáveis
variavel = 4
print variavel
variavel = 'Professor Sidney'
print variavel
variavel = True
print variavel
Tec. em Sistemas para Internet - IFMS 26
Operações matemáticas
# coding=utf8
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.15205385786e11
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
Tec. em Sistemas para Internet - IFMS 28
Sequência de Fibonacci (usando um laço for)
# coding=utf8
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
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
Tec. em Sistemas para Internet - IFMS 30
Controlando o fluxo de execução
# coding=utf8
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
Tec. em Sistemas para Internet - IFMS 31
Controlando o fluxo de execução
# coding=utf8
lista = range(10)
for numero in lista:
numero += 1
print "%d é par"%numero if numero % 2 == 0 else "%d é ímpar"%numero
Tec. em Sistemas para Internet - IFMS 32
Lendo uma string do usuário
frase = raw_input("Digite uma frase: ")
print frase
Tec. em Sistemas para Internet - IFMS 33
Lendo um número do usuário
# coding=utf8
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!"
Tec. em Sistemas para Internet - IFMS 34
… to be continued!
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.
Top Related