Upload
rodrigo-lira
View
4.513
Download
7
Embed Size (px)
DESCRIPTION
Introdução a linguagem do grupo de estudos Python Poli no dia 26 de maio de 2010.
Citation preview
Python Poli
Python Poli
O que é Python ?
>>> Uma linguagem de programação de alto nível
>>> Criada por Guido van Rossum (BDFL)
>>> Criada em meados de 1989
>>> Nome provém de um grupo humorístico britânico, o Monty Python.
>>> Sintaxe simples e fácil de ser assimilada
>>> Multiplataforma e Open Source
O que é Python ?
>>> Linguaguem Interpretada
>>> Atualmente há duas versões principais 2.6.x e 3.x
>>> Interpretador Interativo
>>> Tipagem dinâmica
>>> Orientada a Objetos
>>> Multiparadigma
>>> Grandes empresas vem adotando Python.
>>> Fácil de aprender
>>> Divertido de programar
O que é Python ?
Tipos de dados Internos
Python possui tipos de dados poderosos
Números - 3.141516 , 12346, 91123L, 3+2j, set([1,34,5]),True
Strings - 'Python', u”Casa”, ”guido's”
Listas - [[1,4,5], 2.12, 4, ”dados”, lambda x: x+5]
Dicionários - {”nome”: ”Olga”,”telefone”: 33312220}
Tuplas - (1, 2.3 , 3, set([2,3]), (u”IDLE”,))
Inteiro | int
int('10',2)
chr(97)
abs(-1)
Python não possui operadores de incremento (++) e decremento (--)
Os tipos numéricos em Python são familiares a qualquer um que conheça outra linguagem de programação.
divmod((10,3)
Inteiro Longo | long
A mudaça de Inteiro para Inteiro longo é feita automáticamente.
O limite de tamanho de um inteiro longo depende apenas da memória do computador.
Não existe cast em Python!
Ponto Flutuante | float
Os números de ponto flutuante são implementados como valores ”double” da linguagem C.
>= maior igual<= menor igual< menor> maior== igual!= diferente
Complexo | complex
Os números complexos são definidos em Python pela parte real + parte imaginária, onde a parte imaginária termina com ”j” ou ”J”.
1j * 1j
Boleano | bool
Boleano é um tipo lógico que basicamente assume duas formas
True (verdadeiro) ou False (falso)
True + 1
String é uma conjunto de caracteres usados para representar informações textuais. De uma maneira geral string é muito fácil de ser manipulada em Python, talvez seja mais complicado entender as várias formas de escreve-las.
r'/dev/null' - String brutau'Programa' - String Unicode”foo” - String definida com aspas duplas'bar' - String definida com aspas simples ””” Açaí, guardiãZum de besouro um imãBranca é a tez da manhã
Açai – Djavan””” - String com aspas triplas
Strings são imutáveis !
String | str
String | str
Assim como a Linguagem C, Python reconhece sequências de código de escape.
\n - Nova linha\t - Tabulação horizontal\v - Tabulação vertical\” - Aspas duplas\' - Aspas simples\\ - Barra invertida
Formatação de string em Python suporta todos os códigos de formato printf da linguagem C
%s - String%f - Decimal%d - Inteiro%i - Inteiro%% - %
print ("\n%d de %s de %d"%(26,"Maio",2010))
String | str
Assim como a linguagem C podemos acessar caracteres da string através de indexação. Deslocamento começam em zero e terminam no tamanho da string - 1.
É possível obter o tamanho da string através da funçãolen.
Indexações negativas são permitidas
len(”Python”)
String | str
O fracionamento de strings é feito no formatostring[i:f] onde i é um valor inteiro que representa o início (inclusivo) e f, o fim (exclusivo).
Se forem omitidos os limites do fracionamento, ele terá o 0 como início e o comprimento da string como fim.
”Casa”[::]
?
Lista | list
Alguns métodos do tipo Lista
L.append(elemento) - Insere o elemento no fim da lista.
L.append([posição]) - Retira o último elemento da lista.
L.sort() - Ordena a lista
L.remove(elemento) - remove a primeira ocorrência do elemento na lista
L.count(elemento) - Conta o número de aparições do elemento na lista.
L.insert(posição,elemento) - Insere na posição informada o elemento.
L.reverse() - Inverte a lista.
lista = range(10) lista.append(lista)
sum(range(1,101))
String | str
Alguns métodos do tipo strstr
S.replace(antiga,nova[,maxvezes]) - retorna uma string com a substring antiga substituída pela nova.
S.upper() - retorna uma string com todas os caracteres maiúsculos.
S.islower() - retorna True se todos os caracteres forem maiscúlos, False se forem minúsculos.
S.count(sub,[,inicio,[fim]]) - retorna o número de aparições da substring na string.
S.center(tamanho[,preenchimento]) - retorna uma string centralizada numa linha do tamanho especificado.
S.isdigit() - retorna True se o a string for um dígito e False caso não seja.
S.strip([char]) - retorna uma string sem os espaços em branco do início e do fim.
Lista | list
Fazendo uma analogia com a Linguagem C, lista assemelha-se a um vetor porém elas tem comprimento variável e podem conter quaquer tipo de objeto. Assim como String podem sofrer indexação, fracionamento e concatenação.
Listas são mutáveis !
Tupla | tuple
Tupla é um tipo semelhante a Lista, exceto que tuplas são imutáveis e são definidas por parênteses.
x = (12) y = (12,)
x != y
tuple(range(3))
Dicionário | dict
Dicionário coleção de dados mutável onde os itens são armazenados no formato chave:valor.
Alguns métodos do tipo dicionário
D.values() - Retorna uma lista com os itens
D.keys() - Retorna uma lista com as chaves
D.has_key(elemento) - True se o elemento for uma chave do dicionário ou False caso não seja .
D.update(dicionario) - Atualiza o dicionário com o dicionário passado no argumento.
D.get(chave) - Retorna o valor da chave, caso a chave não exista retorna None
Dicionário | dict
Código
Python detecta blocos de código através da indentação. Todas as instruções indentadas com a mesma distância à direita pertencem ao mesmo bloco de código
É convenção utilizar 4 espaços como indentação
Código
if/else
If <teste1> : <instruções>elif <teste2>: # opcional <instruções>else: # opcional <instruções>
Formato Geral
Python | C
and &&or ||not !
while
A instrução while é semelhante as outras linguagens.
Formato Geral
while <teste>: <instruções> # mioloelse: # opcional
<instruções> # executado se # não saiu do loop # com um break
continue e break funcionam do mesmo modo que a linguagem C
for
A instrução for intera sobre sequências e funciona da seguinte maneira durante a execução do laço, a referência aponta para um elemento da sequência. A cada iteração, a referência é atualizada, para que o bloco de código do for processe o elemento correspondente.
for variavel in sequencia:<instrução>
else: #opcional<instrução>
O laço for em Python assemelha ao foreach de PHP e C#
for
Contato
Rodrigo [email protected]
http://rodrigolira.wordpress.com
Anderson de [email protected]
www.dsc.upe.br/~aom
Sergio [email protected]
www.dsc.upe.br/~sfr
http://br.groups.yahoo.com/group/pythonpoliPython Poli