<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://wiki.portugal-a-programar.org/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel>
        <title>Wiki Portugal-a-Programar python</title>
        <description></description>
        <link>http://wiki.portugal-a-programar.org/</link>
        <lastBuildDate>Fri, 10 Sep 2010 23:52:34 +0100</lastBuildDate>
        <generator>FeedCreator 1.7.2-ppt DokuWiki</generator>
        <image>
            <url>http://wiki.portugal-a-programar.org/lib/images/favicon.ico</url>
            <title>Wiki Portugal-a-Programar</title>
            <link>http://wiki.portugal-a-programar.org/</link>
        </image>
        <item>
            <title>Introdução ao Python</title>
            <link>http://wiki.portugal-a-programar.org/python:artigo_introducao_ao_python</link>
            <description>Movido para Introdução ao Python.</description>
        <category>python</category>
            <pubDate>Thu, 22 Jan 2009 11:07:43 +0100</pubDate>
        </item>
        <item>
            <title>Lucene - uma aproximação simples a este poderoso motor de busca</title>
            <link>http://wiki.portugal-a-programar.org/python:artigo_lucene</link>
            <description>Movido para Lucene - uma aproximação simples a este poderoso motor de busca.</description>
        <category>python</category>
            <pubDate>Thu, 22 Jan 2009 11:37:38 +0100</pubDate>
        </item>
        <item>
            <title>Interação Python - MySQL</title>
            <link>http://wiki.portugal-a-programar.org/python:artigo_python_e_mysql</link>
            <description>Movido para Python &amp; MySQL: Como interagir com bases de dados a partir de scripts.</description>
        <category>python</category>
            <pubDate>Thu, 22 Jan 2009 11:21:57 +0100</pubDate>
        </item>
        <item>
            <title>Compilar codigo fonte (.py) para byte-code (.pyc)</title>
            <link>http://wiki.portugal-a-programar.org/python:compilar_para_bytecode</link>
            <description>Vantagens

	*  Distribuir um programa, mas não deixar ver o seu código;
	*  É mais rápido a executar o programa, pois não tem de compilar primeiro.

Como compilar?

Um único ficheiro


import py_compile
py_compile.compile(&quot;codigo.py&quot;)



A string codigo.py é para substituir pela directoria mais o nome do ficheiro para compilar.</description>
        <category>python</category>
            <pubDate>Sun, 19 Oct 2008 17:24:57 +0100</pubDate>
        </item>
        <item>
            <title>Criptografia avançada</title>
            <link>http://wiki.portugal-a-programar.org/python:criptografia</link>
            <description>Primeiramente, quero deixar bem claro que este pequeno tutorial é de nível básico, ou seja, vou postar aqui o pouco conhecimento que tenho sobre criptografia, e vou aplica-la usando Python. Irei mostrar mais os exemplos em si, e não como funciona a criptografia.</description>
        <category>python</category>
            <pubDate>Sun, 21 Mar 2010 18:50:12 +0100</pubDate>
        </item>
        <item>
            <title>Ficheiros Binários</title>
            <link>http://wiki.portugal-a-programar.org/python:ficheiros_binarios</link>
            <description>Este tutorial fala sobre o ponto básico para se iniciar a manipulação de arquivos binários com Python.
É bem básico, mas espero que gostem:

Arquivos binários em Python

Vamos começar analisando uma estrutura.

import sys #Importa o módulo sys =&gt; exit
try:
   arquivo = open(&quot;arquivo.exe&quot;,&quot;rb&quot;)
   print &quot;Arquivo aberto!&quot;
   arquivo.close()
   sys.exit(0)
except IOError:
   print &quot;Erro ao abrir o arquivo&quot;
   sys.exit(1)</description>
        <category>python</category>
            <pubDate>Thu, 02 Oct 2008 22:12:23 +0100</pubDate>
        </item>
        <item>
            <title>Função Filter</title>
            <link>http://wiki.portugal-a-programar.org/python:filter</link>
            <description>Descrição


A função filter faz parte, tal como a file() ou a float(), e é intrínseca à própria linguagem de programação Python - é uma built-in function - significando que não precisa de ser importado nenhum módulo para a utilizar. A sua utilidade está em, tal como o nome indica, filtrar os elementos de uma lista segundo o que está definido numa função.</description>
        <category>python</category>
            <pubDate>Thu, 05 Mar 2009 19:39:17 +0100</pubDate>
        </item>
        <item>
            <title>Interfaces Gráficas com Tkinter</title>
            <link>http://wiki.portugal-a-programar.org/python:gui_em_tkinter</link>
            <description>O Tkinter é um wrapper do tcl/Tk, e acompanha a distribuição oficial do interpretador Python. É a biblioteca de UI de facto da linguagem Python.

Algumas das suas Vantages:

	*  Portabilidade - Programas escritos usando o Tkinter são portáveis livremente entre Linux, Unix, Windows e Mac, além da garantia de que qualquer um poderá executar o programa sem precisar instalar bibliotecas extras.</description>
        <category>python</category>
            <pubDate>Tue, 24 Mar 2009 13:23:17 +0100</pubDate>
        </item>
        <item>
            <title>Inteligência Artificial - Chatbot</title>
            <link>http://wiki.portugal-a-programar.org/python:inteligencia_artificial_-_aiml</link>
            <description>Ja houviram falar de A.I (Inteligência Artificial) ? Ok!

Provavelmente ja viram algo sobre os famosos chatbots ou chatterbots.
Chatbot ou chatterbot, são programas de computador que usam da Inteligência Artificial, com o propósito de simular a habilidade de conversação de um ser humano.</description>
        <category>python</category>
            <pubDate>Sun, 22 Mar 2009 18:35:17 +0100</pubDate>
        </item>
        <item>
            <title>Funções Lambda</title>
            <link>http://wiki.portugal-a-programar.org/python:lambda</link>
            <description>Definição

Influenciada pela linguagem Lisp, Python suporta uma maneira de definir funções com uma linha: as chamadas funções lambda. Estas funções, muitas vezes não exploradas pelo programador iniciado, são um conceito prático que pode ser usado em conjunto com as filter(), map(), e reduce(). Porém, não são totalmente equivalentes às funções com o mesmo nome das linguagens de programação funcionais como Haskell ou Erlang.</description>
        <category>python</category>
            <pubDate>Thu, 05 Jun 2008 21:26:48 +0100</pubDate>
        </item>
        <item>
            <title>Função Map</title>
            <link>http://wiki.portugal-a-programar.org/python:map</link>
            <description>Definição


A função Map() tem como objectivo aplicar uma função a todos os elementos de uma sequência, retornando uma nova sequência com o resultado. Em suma, poupa o esforço de escrever um ciclo for que percorra os elementos da sequência e aplique uma função sobre eles.</description>
        <category>python</category>
            <pubDate>Thu, 05 Mar 2009 19:43:23 +0100</pubDate>
        </item>
        <item>
            <title>__name__=='__main__'</title>
            <link>http://wiki.portugal-a-programar.org/python:name_equals_main</link>
            <description>O if __name__ == '__main__': serve para se saber se se está a correr o ficheiro directamente ou se está a ser importado por outro programa. Desta maneira, podemos usar o mesmo ficheiro sem ter que fazer alterações para testar o módulo, correndo-o directamente, ou importá-lo directamente noutro programa.</description>
        <category>python</category>
            <pubDate>Fri, 02 Apr 2010 20:56:36 +0100</pubDate>
        </item>
        <item>
            <title>Option parser</title>
            <link>http://wiki.portugal-a-programar.org/python:optionparser</link>
            <description>Introdução


O Option Parser, é um método presente no módulo optparser, que permite que o utilizador passe flags a um programa, como por exemplo -v ou --verbose.



from optparse import OptionParser

arguments_list = OptionParser()

arguments_list.add_option(&quot;-f&quot;, &quot;--file&quot;, action = &quot;store&quot;, 
type = &quot;string&quot;, dest = &quot;file&quot;, help = &quot;Path to file.&quot;)

arguments_list.add_option(&quot;-v&quot;, &quot;--verbose&quot;, action = &quot;store_true&quot;, 
dest = &quot;verbose&quot;, help = &quot;Verbose mode.&quot;)

arguments_list.add_option(&quot;-nf&quot;, &quot;--n…</description>
        <category>python</category>
            <pubDate>Sun, 11 Nov 2007 18:58:01 +0100</pubDate>
        </item>
        <item>
            <title>Py2exe - Converter scripts em ficheiros executáveis (*.exe)</title>
            <link>http://wiki.portugal-a-programar.org/python:py2exe</link>
            <description>O que é o py2exe


O módulo py2exe é uma extensão à biblioteca distutils, que converte scripts de Python, com extensão *.py em ficheiros executáveis no windows, os tradicionais *.exe.

Vem com o Python?


Não, mas está disponível para download em: &lt;http://sourceforge.net/project/showfiles.php?group_id=15583&gt;</description>
        <category>python</category>
            <pubDate>Wed, 15 Oct 2008 21:35:07 +0100</pubDate>
        </item>
        <item>
            <title>Captcha visual</title>
            <link>http://wiki.portugal-a-programar.org/python:random_captions</link>
            <description>Pequeno script que cria um captcha visual, gerando números aleatoriamente. Tira partido do módulo PIL (Python Image Library) e do módulo random.

Requisitos


Módulo PIL - Python image library

Código


Nota: O threshold varia a intensidade dos pontos brancos.</description>
        <category>python</category>
            <pubDate>Thu, 05 Jun 2008 20:28:57 +0100</pubDate>
        </item>
        <item>
            <title>Função Reduce</title>
            <link>http://wiki.portugal-a-programar.org/python:reduce</link>
            <description>Tal como as suas congéneres map() e filter(), a função reduce() é uma built-in function da linguagem Python, que associa uma função e uma lista.

Relativamente à sintaxe, a reduce() é simples: reduce(função, lista, opcional). O valor opcional é um valor que, caso a lista seja nula, é tido como valor padrão. A função passada recebe dois argumentos: o primeiro, é o argumento actual da lista, enquanto que o segundo é o resultado da última chamada da função (caso exista).</description>
        <category>python</category>
            <pubDate>Wed, 22 Apr 2009 10:16:15 +0100</pubDate>
        </item>
        <item>
            <title>Expressões Regulares em Python</title>
            <link>http://wiki.portugal-a-programar.org/python:regex</link>
            <description>Comentário do autor

Antes de começar a chatear a cabeça às pessoas, é melhor eu dizer umas coisinhas sobre Regex (também conhecidas por Regular Expressions).


	* Regexs não é complicado de escrever, pode ser complicado é de ler as regexs feitas pelos outros (existe uma maneira de atenuar/evitar essa situação que eu vou explicar mais para a frente, mas se são impacientes, procurem por re.VERBOSE aqui no guia, que não falham).
	*  Regexs não é a cura para todos os males. O que quero dizer é que …</description>
        <category>python</category>
            <pubDate>Mon, 02 Aug 2010 12:19:51 +0100</pubDate>
        </item>
        <item>
            <title>Tutorial de Slicing</title>
            <link>http://wiki.portugal-a-programar.org/python:slicing</link>
            <description>Este tutorial tem como objectivo explicar e dar alguns exemplos da forma como podemos usar a funcionalidade slicing. Traduzindo slice para Português teremos a palavra “fatia” e o que faz não é nada mais anda menos do que retirar uma fatia.

Tal como se pode indexar para acedermos a elementos individuais podemos usar o comando slice para aceder a um gama de elementos.</description>
        <category>python</category>
            <pubDate>Wed, 15 Oct 2008 22:03:33 +0100</pubDate>
        </item>
        <item>
            <title>Sudoku</title>
            <link>http://wiki.portugal-a-programar.org/python:sudoku</link>
            <description>Exemplo de um pequeno script que resolve sudokus.


m=[
[0,0,0,0,0,6,0,8,0],
[0,8,0,0,5,0,6,7,0],
[0,0,2,0,0,3,0,5,1],
[1,0,0,2,7,0,0,0,0],
[0,0,7,6,0,8,2,0,0],
[0,0,0,0,1,4,0,0,7],
[5,2,0,4,0,0,7,0,0],
[0,4,3,0,8,0,0,6,0],
[0,9,0,1,0,0,0,0,0]]
 
def doit():
    i,j=pz()
    if i==-1:return 1
    for n in range(1,10):
        if linok(i,j,n) and colok(i,j,n) and quadok(i,j,n):
            m[i][j]=n
            if doit():return 1
    m[i][j]=0
    return 0
 
def linok(i,p,n):
    for j in range(9…</description>
        <category>python</category>
            <pubDate>Sat, 25 Oct 2008 22:47:22 +0100</pubDate>
        </item>
        <item>
            <title>Transferir Arquivos via Sockets</title>
            <link>http://wiki.portugal-a-programar.org/python:transferir_via_sockets</link>
            <description>Irei explicar neste simples exemplos, como transferir um arquivo de um determinado local (seu computador por exemplo), para outro local qualquer, através de socket.

Em Python, manipular sockets é uma tarefa extremamente FÁCIL.

Pois bem, vamos supor que você que transferir um FICHEIRO.rar do seu computador, para outro computador:
Este outro computador, deve estar rodando o Servidor, esperando uma conexão do Cliente.</description>
        <category>python</category>
            <pubDate>Fri, 04 Dec 2009 21:18:56 +0100</pubDate>
        </item>
        <item>
            <title>Tutorial simples do Pygame</title>
            <link>http://wiki.portugal-a-programar.org/python:turorial_simples_pygame</link>
            <description>&lt;http://www.portugal-a-programar.org/forum/index.php/topic,15250.0.html&gt;


Neste tutorial, vamos ver como colocar um circulo no ecrã, e movê-lo usando as setas do teclado.

No final deverão ter algo assim parecido o código deverá ser similar a este (mais à frente será analisado mais em pormenor):</description>
        <category>python</category>
            <pubDate>Sat, 25 Oct 2008 22:53:43 +0100</pubDate>
        </item>
    </channel>
</rss>
