Boletim Campus Party – Introdução ao Python

Estamos na Campus Party e finalmente postando a respeito. Vou falar hoje da primeira palestra que assistimos, que já faz algum tempo (foi na terça de manhã) e o assunto foi Python: Seja dinâmico com Python, de Rodrigo Strauss. Muito boa por sinal, a palestra abordou as principais diferenças entre Python e outras linguagens, diferenças que nos propiciam agilidade na hora de programar. Bom… sou suspeita para falar, porque curto muito Python, mas vamos ao conteúdo e vão ver que não é à toa:
Python é uma linguagens dinâmica, que significa que não é necessário declarar variáveis. Isto é automático quando definimos valor a uma variavel. Também não há necessidade de converter números inteiros para long. A conversão acontece automaticamente.
Apesar de não ser necessário declarar variáveis, é necessário inicializa-las, ou seja, atribuir algum valor a elas antes de usá-las. Isso evita bugs (que acontecem de monte) de usarmos por engano variáveis que não existem.
Python não é estaticamente compilada. É uma linguagem interpretada, basta abrir o console, escrever o programa e rodá-lo, sem nem mesmo precisar salvar o arquivo. Estas e outras caracteristicas se traduzem em agilidade para o programador.
Algumas outras diferenças notaveis são a famosa “Tupla” (Tuple), Listas e Dictionary:
Tupla
Quem programa com certeza já passou pelo drama de ter que retornar dois ou mais valores de uma função. Para isso, no Python usamos a Tupla!
>>> def FF():
… return (1,2)
…
>>> (x,y) = FF()
>>> x
1
>>> y
2
>>>
Listas
Listas são conjuntos lineares de dados indexados por numeros inteiros:
>>> x = ['Espaco', 'Integral', 'Campus', 'Party']
A partir de uma lista podemos acessar um determinado item através de seu indice:
>>> x[0]
‘Espaco’
Com indices negativos, acessamos itens a partir do final da lista:
>>> x[-2]
‘Campus’
Podemos também “fatiar” a lista:
>>> x[2:]
['Campus', 'Party']
Dictionary
Dictionary nos permite estruturar dados no formato de um dicionario, definindo chaves e atribuindo valores a elas, e permite ainda que os valores assumido contenham qualquer tipo de objeto, até mesmo outro dicionario:
>>> sobrenome = {‘milena’:'godau’}
>>> sobrenome['milena']
‘godau’
>>>
Há outras diferenças como os delimitadores de strings: no Python podemos usar tanto aspas simples quanto duplas pra definir strings (desde que comecemos e terminemos com a mesma). Uma coisa a menos para nos preocupar.
Também podemos usar 3 aspas para definir strings com tab e quebra de linha:
>>> x= ”’
Usando 3 aspas
Podemos escrever coisas em uma linha
e em outra e tudo será a mesma String contida em x”’
>>> x
‘\nUsando 3 aspas\n\nPodemos escrever coisas em uma linha\n\ne em outra e tudo ser\xc3\xa1 a mesma String contida em x”
Notem também que no Python identação é obrigatória. É através dela que o Python sabe que determinado comando pertence a uma função ou a um loop for por exemplo. Portanto o código fica automaticamente organizável e legível.
Além disso Python suporta programção orientada a objetos e trabalha com classes. Quanto a isso temos os atributos mágicos (sempre começados com dois undelines __) que são automáticamente adicionados quando criamos uma classe e podemos adicionamos outros atributos e removê-los, podemos também documentar nossa classe adicionando simplesmente uma string abaixo dela. Essa documentação pode ser vista posteriormente usando o método __doc(). E também há o famoso “dir()” que nos mostra todos os métodos existentes em uma determinada classe.
Python já é nativamente instalado no Linux. Para Windows de uma olhada em http://www.python.org/download/windows/
Para quem quiser conferir a apresentação do Rodrigo Strauss está no SlideShare: http://www.slideshare.net/campuspartybrasil/seja-dinmico-com-python
Você também pode acompanhar as palestras ao vivo na TV Campus Party: http://tv.campus-party.org/
