 |
|
|
|
|
|
|
|
|
|
|
 |
Tutoriais/Dicas |
|
|
|
 |
Serviços
|
|
|
|
 |
Expediente
|
|
|
|
 |
Parceiros
|
|
|
|
|
|
|
|
|
|
 |
|
 |
 |
 |
|
|
Quarta Feira, 31 de Dezembro de 1969
Tutorial básico de Python
1. Tutorial Básico de Python</a>
<a href="#intro">1.1 Introdução </a>
<a href="#2">2. O que é Python </a>
<a href="#21">2.1 História </a>
<a href="#22">2.2 Características </a>
<a href="#23">2.3 Módulos do Python </a>
<a href="#24">2.4 O que é NumPy </a>
<a href="#25">2.5 Tipos de variáveis dinâmicos</a>
<a href="#26">2.6 Controle de Blocos por identação</a>
<a href="#27">2.7 Tipos de variáveis de alto nível</a>
<a href="#28">2.8 Orientação a objetos</a>
<a href="#3">3. Por que utilizar o Python</a>
<p>
<b><a name=intro><font face="arial" size="4">1.1 - Introdução</font></a></b>
</p>
<div align=justify><P>
Este tutorial foi criado com intuito de ensinar de maneira simples e objetiva esta nova linguagem de programação para Internet. Vale salientar que este tutorial não é um tutorial aprofundado, e nem um manual de referência. Caso você deseja se aprofundar, existem manuais disponíveis no site <a href="http://www.python.org/docs/" target=_blank>http://www.python.org/docs/</a>.</P>
</div>
<div align=right><a href="#topo">Topo</a></div>
<b><a name=2><font face="arial" size="4">2. O que é Python?</font></a></b>
<div align=justify>
<p>
Python é uma linguagem interpretada, bastante portável,
orientada a objetos (incluindo herança múltipla). Apresenta semântica dinâmica,
um moderno mecanismo de tratamento de erros e exceções. Algo só visto em
linguagens modernas como Java e as versões mais recentes de C++. Python possui
Uma forma eficiente de acesso e reutilização de código com o uso de módulos,
coleta de lixo automática, recursos avançados de manipulação de textos,
listas e outras estruturas de dados (como dicionários, mais poderoso que o hash
de Perl, pois os valores assumidos podem conter qualquer outro tipo de objeto
como até mesmo outros dicionários). Python possui ainda uma sintaxe simples,
quase como um pseudo-código, característica marcante da sintaxe, próxima a
linguagem matemática, do MATLAB.</p>
<p> Para baixar o interpretador do python para windows, acesse o site <a href="http://www.python.org" target=_blank>http://www.python.org</a>.</p>
<div align=right><a href="#topo">Topo</a></div>
<p>
<b><a name="21"><font face="arial" size="4">2.1 História</font></a></b></p>
<p>
Seu desenvolvimento teve início em 1990, pelo holandês
Guido van Rossum, na CWI em Amsterdã e continuou na CNRI (fundação que
sustenta a linguagem hoje) em Reston. O conjunto de entidades e pessoas ligadas
ao Python, sobretudo via Internet, formam a Python Software Activity (PSA).
<p align="right"><a href="#topo">Topo</a>
<p>
<b><a name="22"><font face="arial" size="4">2.2 Características</font></a></b>
</p>
<p>
Em Python, diferentemente de C++ ou Java, as funções
são tratadas como objetos, característica de linguagens de programação
funcional como Lisp, muito utilizada em aplicações de inteligência
artificial. Outro ponto importante, oferecendo grande flexibilidade, é que, em
Python, cada argumento de uma função pode assumir um valor <em>default</em>.
<p align="right"><a href="#topo">Topo</a>
<p>
<b><a name="23"><font face="arial" size="4">2.3 Módulos do Python</font></a></b></p>
<p>
Os módulos, em Python, são coleções de funções.
Sua versão 1.5.2, de 1999, já incluía (a versão atual é a 2.0) mais de 140 módulos,
sem contar a extensão gráfica Tk que é importante na construção das
ferramentas de utilização da linguagem. E desconsiderando também outros módulos
que podem ser encontrados a partir do site oficial (www.python.org), quase todos
livres e gratuitos. Como ilustração, podemos citar alguns módulos, como o <i>cgi</i>
(para programação de páginas dinâmicas), <i>ftplib</i> (para montagem de
scripts para interação com servidores FTP), <i>gzip</i> (para leitura e
escrita de arquivos comprimidos), <i>math</i> (para utilização de funções
matemáticas), <i>re</i> (para busca de texto com expressões regulares,
característica da linguagem Perl), <i>string</i> (para operações com
strings), <i>time</i> (para obtenção de hora atual e conversão de formatos
de data), <i>xmllib</i> (para interpretação de arquivos em formato XML). Outro
módulos especial é o NumPy, utilizado na computação científica.</p>
<p align="right"><a href="#topo">Topo</a>
<p>
<b><a name="24"><font face="arial" size="4">2.4 O que é NumPy</font></a></b></p>
<p>
O NumPy é um conjunto de extensões para Python que
oferecem várias funcionalidades para manipulação de conjuntos de objetos
chamados <em>arrays</em>. Estes, por sua vez, podem ter qualquer número de
dimensões. A vantagem destas extensões é que podemos processar grandes
conjuntos de forma tão rápida quanto os resultados das linguagens não
interpretadas de mais baixo nível. A manipulação de grandes conjuntos numéricos,
que é o caso do processamento de imagens, se fossem usadas as estruturas de
dados padrão do Python, poderia ser muito lenta e ocupar muito espaço.
Entretanto, mesmo assim, comparando a execução de comandos de iteração (como
o comando "for''), críticos em linguagens interpretadas, o Python se revela
eficiente, sendo mais rápido, por exemplo, que o MATLAB. Tanto Python como
MATLAB podem facilmente agregar funções (boa extensividade). O fato
de o Python ter código aberto e ser gratuitamente distribuído, inclusive com o
Numerical Python, foi um elemento decisivo na escolha desta linguagem, já que a
intenção, entre outras, é beneficiar qualquer pessoa interessada em
ferramentas de processamento de imagens.</p>
<p align="right"><a href="#topo">Topo</a>
<p>
<b><a name="25"><font face="arial" size="4">2.5 Tipos de variáveis dinâmicos</font></a></b></p>
<p>
Um dos conceitos básicos de programação é a variável, que é um
associação entre um nome e um valor. Ou seja, temos em:
</P>
<table border=0>
<tr>
<td>
<i>
>>> a = 1
</i>
</td>
</tr>
</table>
<p>
A variável <i>a</i> recebendo o valor de <i>1</i>. Em Python, não precisamos
declarar variáveis; para criar uma, basta atribuir um valor a ela. No exemplo
acima, criamos uma variável chamada <i>a</i>.</P>
<p>
Quando dizemos que a linguagem possui tipos de variáveis dinâmicos, o
tipo de valor ao qual um nome está associado pode variar durante a execução
de um programa. Não quer dizer que não exista tipo -- embora em Python não
o declaremos, as variáveis assumem um tipo -- apenas que este tipo pode
variar durante o curso da execução.
Esta propriedade por si só não é tão importante, embora realmente torne
a escrita dos programas mais ágil: não precisamos decidir de imediato qual
informação será armazenada, e podemos converter uma informação entre
diversos tipos sem definir uma nova variável. Associada à orientação a
objetos, no entanto, possui reflexos interessantes, que discutiremos mais
adiante.
<div align=right><a href="#topo">Topo</a></div>
<b><a name="26"><font face="arial" size="4">2.6 Controle de bloco por indentação</font></a>
</b>
<p>
Na maior parte das linguagens, há instruções ou símbolos específicos que delimitam blocos de código que compõem um laço ou expressão condicional. Por exemplo, em C:</P>
<table border=0>
<tr>
<td>
<i>
if ( a < 0 ) {
/* bloco de código */
}
</i>
</td>
</tr>
</table>
ou em Fortran:
<table border=0>
<tr>
<td>
<i>
if ( a .lt. 0 ) then
/* bloco de código */
endif
</i>
</td>
</tr>
</table>
<p>Nestes dois casos, os blocos são delimitados -- em C por chaves, e em
Fortran pelo par <i>then</i> e <i>endif</i>. Em Python, os blocos são
demarcados apenas por indentação:</P>
<table border=0>
<tr>
<td>
<i>
if ( a < 0 ):
# bloco de código
# (ao fim da seção indentada
# termina o bloco)
# próxima instrução (após o if)
</i>
</td>
</tr>
</table>
<p>
Esta propriedade faz com que a linguagem seja muito clara e fácil de ler
-- a indentação está sempre correta -- mas também requer um controle
formal sobre a indentação. É importante convencionar se a indentação será feita por uma tabulação ou por um número determinado de espaços, já que todas as pessoas editando um programa Python devem usar o mesmo tipo. Uma boa dica que evita confusão é usar 4 espaços para cada nível.
</p>
<div align=right><a href="#topo">Topo</a></div>
<a name="27"><b><font color="green" size="4" face="Arial">2.7 Tipos de variáveis de alto nível</font></b></a>
<p>
Como dito antes, Python possui tipos, e alguns destes tipos merecem uma
atenção especial por serem de alto nível, e portanto, bastante úteis.
Python oferece:
<ul>
<li><u>Strings</u>: a cadeia de caracteres, uma forma de dado muito comum, possui
um tipo específico.
<li><u>Listas</u>: uma lista é como um vetor em outras linguagens: um conjunto de
valores organizados (<i>indexados</i>) por um índice numérico e inteiro.
<table border=0>
<tr>
<td>
<i>
>>> a = [ "A", "B", "C" ]
>>> print a[2]
"C"
</i>
</td>
</tr>
</table>
<li><u>Tuplas</u>: tuplas são listas imutáveis; em outras palavras, não podem
ser alteradas uma vez criadas.
<li><u>Dicionários</u>: dicionários são como listas, mas que possuem índices
cujo tipo não precisa ser inteiro. Dicionários são conhecidos em outras
linguagens como arrays associativos ou <i>hashes</i>.
<table border=0>
<tr>
<td>
<i>
>>> autor = { "nome" : "Christian", "idade" : 26 }
>>> print autor["nome"]
"Christian"
</i>
</td>
</tr>
</table>
<li><u>Classes</u>: classes são tipos especiais que servem para apoiar programação
orientada a objetos, que será discutida a seguir.</li>
</ul>
<div align=right><a href="#topo">Topo</a></div>
<p><b><a name="28"><font face="arial" size="4">2.8 Orientação a objetos</font></a></b></p>
<p>
Neste tópico, faremos uma rápida explicação sobre
como pode ser feita a orientação a objetos.</p><p> Orientação a objetos (OO) é uma forma de estruturar um programa: ao invés de definirmos variáveis e criarmos funções, passando parâmetros entre elas, definimos objetos que possuem dados e ações associadas. O programa orientado a objetos é resultado da 'colaboração' entre estes objetos.</p>
<p> Para a orientação a objetos ser utilizada, a linguagem de programação deve dar suporte a objetos (e aos seus tipos, as classes). Em Python, há suporte completo a OO; aliás, a linguagem vai além de simples suporte: todos os elementos básicos em Python são objetos.<p> Segue um exemplo de uma classe, e da criação de um objeto, que nos termos da linguagem Python é chamado de instância:</P>
<table border=0>
<tr>
<td>
<i>
>> class Produto:
def vende(self):
# Aqui entrariam as ações que realizam uma venda
pass
>> p = Produto()
>> p.preco = 10.00
>> p.descricao = "Halls extra forte"
>> p.vende()
>> print p
<instance p of class `Produto'>
</i>
</td>
</tr>
</table>
<div align=right><a href="#topo">Topo</a></div>
<a name="3"><b><font color="green" face="arial" size="4">3. Por que utilizar o
Python?</font></b></a>
<div align=justify><P>
Uma boa pergunta é -- já que existe uma quantidade de linguagens
diferentes -- por que aprender Python é importante ou mesmo interessante? Há
diversas respostas; a mais importante, na minha opinião, é que Python é fácil.
É fácil em diversos sentidos:</p>
<ul>
<li>Os conceitos fundamentais da linguagem são simples.
<li>A sintaxe da linguagem é clara e fácil de aprender.
<li>A linguagem possui um interpretador de comandos que permite aprender e
testar rapidamente trechos de código.
<li>Na grande maioria dos casos, um programa em Python será muito mais
curto que seu correspondente escrito em outra linguagem. Isto também faz
com que seja mais rápido de escrever.
<li>Existe suporte para todo tipo de biblioteca e banco de dados possível.
Ou seja, pode-se fazer em Python qualquer tipo de programa, mesmo que
utilize gráficos, base SQL ou outra tecnologia externa.
<li>É possível escrever extensões a Python em C e C++ se é necessário
performance máxima, ou se é desejável fazer interface com alguma
ferramenta que possua biblioteca apenas nestas linguagens.
<li>Python permite que o programa funcione em múltiplas plataformas; em
outras palavras, a sua aplicação feita para Linux pode rodar sem
problemas em Windows e em outros sistemas.
<li>Python é pouco punitivo: em geral, "tudo pode" e há poucas regras
arbitrárias; isto acaba por tornar prazeroso o uso da linguagem.</li>
</ul>
</div>
<div align=right><a href="#topo">Topo
</a></div>
<center><font size="1">Por: Autor Desconhecido - Adaptado pela Equipe CódigoFonte.net
(Todos os Direitos Reservados)</font></center>
Nenhum comentário, seja o primeiro a comentar.
Para adicionar um comentário você deve efetuar o login
|
|
|
|
|
|
|