About

Swaroop C H is 27 years of age. He graduated in B.E. (Computer Science) from PESIT, Bangalore, India. He has previously worked at Yahoo! and Adobe.

More about

Page
Personal tools
COLLECTION
Collection

Python pt-br:Em Seguida

From Notes

Jump to: navigation, search

Se você leu este livro completamente até agora e praticou escrevendo muitos programas, então deve estar se sentindo confortável e familiarizado com Python. Você provavelmente também criou diversos programas em Python para realizar alguns experimentos e exercitar suas habilidades em Python. Se você não fez isso ainda, deveria tê-lo feito. A questão agora é "O Que Fazer Em Seguida?".

Eu sugiro que você ataque o seguinte problema:

Crie o seu próprio programa "address_book" usando linha de comando, com o qual você poderá adicionar, modificar, deletar ou realizar buscas pelos seus contatos, tais como amigos, familiares e colegas, bem como pelas suas informações, tais como endereços de email e/ou números de telefone. Os detalhes devem ser armazenados para posterior recuperação.

Isto se torna razoavelmente fácil se você pensar em termos de todo o material que nós encontramos até agora. Se você ainda assim deseja instruções de como proceder, aqui está uma sugestão.

Sugestão (Não leia)
Crie uma classe que represente a informação sobre cada pessoa. Use um dicionário para guardar os objetos pessoais com o nome de cada uma como chave. Utilize o módulo pickle para guardar os objetos de forma persistente em seu disco rígido. Empregue os métodos internos do dicionário para adicionar, deletar e modificar as pessoas.

Uma vez que você seja capaz de realizar isso, você pode proclamar-se programador em Python. Agora, imediatamente envie um email me agradecendo por este grande livro ;-). Este passo é opcional mas recomendado. Da mesma forma, por favor, considere realizar uma doação, contribuir com melhoramentos ou voluntariar-se para traduções para apoiar o contínuo desenvolvimento deste livro.

Se você achou muito fácil aquele programa, aqui está um outro:

Implemente o comando replace. Este comando substituirá uma string por outra em uma lista de arquivos fornecida.

O comando replace pode ser tão simples ou sofisticado quanto você desejar, desde simples substituição de strings, até a busca por padrões (expressões regulares).

Depois disso, aqui estão alguns caminhos para prosseguir a sua jornada com Python:


Contents

[edit] Exemplos de Programas

A melhor maneira de aprender uma linguagem de programação é escrever muitos programas e ler um monte deles:

[edit] Perguntas e Respostas

[edit] Tips and Tricks (Sugestões e Truques)

[edit] Livros, Publicações, Tutoriais, Vídeos

O próximo passo lógico depois deste livro é a leitura do extraordinário livro de Mark Pilgrim Dive Into Python (Mergulhando em Python) o qual você pode também ler inteiramente on line. Esse livro explora tópicos como expressões regulares, processamento XML, serviços web, teste unitário (unit testing), etc. em detalhes.

Outros recursos adicionais são:

[edit] Discussão

Se você parece incapaz de resolver um problema de Python, e não sabe a quem perguntar, então a lista comp.lang.python discussion group é o melhor lugar para colocar a sua questão.

Certifique-se de fazer sua 'lição de casa' e de haver tentado resolver o seu problema por você mesmo antes de mais nada.

Make sure you do your homework and have tried solving the problem yourself first.

[edit] Novidades

Se você quiser conhecer as últimas novidades no mundo de Python, então acompanhe o Python Planet oficial e/ou o Python Planet não-oficial.

[edit] Instalando Bibliotecas

Existe um número enorme de bibliotecas open-source no Python Package Index as quais você pode empregar em seus próprios programas.

Para instalar aquelas bibliotecas, você pode usar o excelente EasyInstall tool de Philip Eby.

[edit] Software Gráfico

Suponha que você queira criar seus próprios programas gráficos usando Python. Isso pode ser feito por meio de um biblioteca GUI (Graphical User Interface) com suas interfaces vínculos (bindings) com Python. Interfaces são o que permite que você escreva programas em Python e utilize as bibliotecas que, por sua vez, são escritas em C, C++ ou outras linguagens.

Existem um grande número de opções para GUI usando Python:

PyQt
Esta é a interface em Python para o Qt toolkit que é a fundação sobre a qual KDE foi produzido. Qt é extremamente fácil de usar e muito poderosa, especialmente devido ao Qt Designer e a incrivel documentação. PyOt é livre se você quiser criar software open-source (GPL) e pago, se você for desenvolver software proprietário fechado. Para iniciar, leia o PyQt tutorial ou o PyQt book.
PyGTK
Esta é a interface em Python para o GTK+ toolkit que é a fundação sobre a qual Gnome foi produzido. GTK+ possui muitos pequenos problemas para o seu uso, mas uma vez que você se torna confortável, poderá criar aplicativos com GUI rapidamente. A interface gráfica Glade é indispensável. A documentação ainda deve ser emlhorada. GTK+ funciona bem em Linux, mas a sua versão para Windows está incompleta. Você pode criar softwares tanto livres, como proprietários usando GTK+. Para iniciar, leia o PyGTK tutorial.
wxPython
Este é a interface em Python para o wxWidgets toolkit. wxPython tem uma curva de aprendizagem associada. Entretanto, é bem portável e executa em Linux, Windows, MAC e mesmo em plataformas imersas (embedded). Existem muitas IDEs disponíveis em wxPython as quais incluem GUI designers, tais como SPE (Stani's Python Editor) e a construtora de GUIs wxGlade. Você pode criar software tanto livre como proprietário usando wxPython. Para iniciar, leia o wxPython tutorial.
TkInter
Este é dos mais antigos GUI toolkits em existência. Se você tem utilizado IDLE, já viu o programa TkInter em ação. Não oferece uma das melhores sensações para o usuário, devido a sua aparência antiquada. TkInter é portável e executa tanto em Linux/Unix, quanto em Windows. Mas importante que tuso, TkInter é parte integrante da distribuição padrão de Python. Para iniciar, leia o Tkinter tutorial.

Para mais opções, veja o wiki GuiProgramming no website oficial de Python.

[edit] Resumo das Ferramentas GUI

Infelizmente, não existe uma ferramenta GUI padrão em Python. Eu sugiro que você escolha uma das anteriores, dependendo de sua situação. O primeiro fator é se você está disposto a pagar para usar qualquer uma das ferramentas GUI. O segundo fator é se você quer que seu programa execute apenas em Windows ou em MAC e Linux, ou em todos eles. O terceiro fator, se Linux for a plataforma escolhida, se você é um usuário de KDE ou de GNOME.

Para uma análise mais detalhada e completa, veja a página 26 de The Python Papers, Volume 3, Issue 1.

[edit] Várias Implementações

EXistem usualmente duas partes em uma linguagem de programação - a linguagem e o software. A linguagem é "como" nós escrevemos algo. O software é "o que" realmente executa o nossos programas.

Nós vimos uitlizando o software "CPython" para executar os nossos programas. Este é referenciado como CPython, pois é escrito na linguagem C e é o "Interpretador Python Clássico".

Existem adicionalmente outros softwares que podem executar seus programas em Python:

Jython
Uma implementação de Python que executa na plataforma Java. Isso significa que você pode usar as bibliotecas e classes em Java dentro da linguagem Python e vice-versa.
IronPython
Uma implementação de Python que executa em plataforma .NET. Isso significa que você pode usar as bibliotecas e classes .NET dentro da linguagem Python e vice-versa.
PyPy
Uma implementação de Python escrita em Python! Este é um projeto de pesquisa para tornar mais fácil e rápido o interpretador, uma vez que o pŕoprio interpretador está escrito em uma linguagem dinâmica (em oposição a linguagens estáticas, tais como C, Java, ou C# nas implementações acima).
Stackless Python
Uma implementação que é especializada em performance baseada em threads.

Existem também outras tais como CLPython - uma implementação de Python escrita em Common Lisp e IronMonkey, que é uma implementação de IronPython para operar sobre um interpretador JavaScript, o que poderia significar que você poderia usar Python (ao invés de JavaScript) para escrever os seus programas web-browser ("Ajax").

Cada uma dessas implementações têm a sua própria área especializada na qual são úteis.

[edit] Resumo

Nós chegamos ao final deste livro, mas, como se diz comumente, este é "o começo do fim"! Vocé é, agora, um ávido usuário de Python e está sem dúvida pronto para resolver muitos problemas utilizando Python. Você pode iniciar por automatizar o seu computador para realizar toda espécie de coisas que sequer podiam ser imaginadas anteriormente, ou por escrever seus próprios jogos e muito, muito mais. Assim, pode começar!


Please add your comments by clicking on the 'Discussion' link in the left sidebar.