associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "CookBook"

Diferenças entre as versões de 189 e 264 (75 versões de distância)
Revisão 189e 2007-03-08 17:50:40
Tamanho: 12286
Editor: saviorangel
Comentário:
Revisão 264e 2013-09-17 18:31:07
Tamanho: 17338
Comentário:
Deleções são marcadas assim. Adições são marcadas assim.
Linha 2: Linha 2:

[[
TableOfContents]]
<<TableOfContents>>
Linha 8: Linha 7:
Linha 10: Linha 8:

  
* ArquivoDeConfiguracao - Leitura e escrita de um arquivo de configuração simples usando o mecanismo de import do Python.
   * ArquivoDeConfiguracaoComConfigParser - Leitura e escrita de um arquivo de configuração simples usando o módulo !ConfigParser do Python.

  
* DividirArquivosEmVariosCdOuDvd - Script que organiza uma série de arquivos em vários DVDs/CDs. Útil quando você não quer pensar muito ou pra otimizar o uso do DVD/CD. 

   * DirFileList - Cria uma lista com todos os arquivos de um determinado diretório recursivamente.
 * ArquivoDeConfiguracao - Leitura e escrita de um arquivo de configuração simples usando o mecanismo de import do Python.
 * ArquivoDeConfiguracaoComConfigParser - Leitura e escrita de um arquivo de configuração simples usando o módulo !ConfigParser do Python.
 * DividirArquivosEmVariosCdOuDvd - Script que organiza uma série de arquivos em vários DVDs/CDs. Útil quando você não quer pensar muito ou pra otimizar o uso do DVD/CD.
 * DirFileList - Cria uma lista com todos os arquivos de um determinado diretório recursivamente.
 * [[ODSheetReader]] - Leitor de planilhas de cálculo Open Document Format (OpenOffice)
 * PassarByteOrderMarker
- Usado para passar direto pelo Byte-Order Marker (UTF BOM) inserido pelo Windows em alguns arquivos.
 * PyInotify : exemplo para manter uma cópia de um arquivo que é deletado pelo processo que o criou.
 * ZIP:
CreateZipFile - exeplo de criação de um arquivo zip de dentro do Python
Linha 19: Linha 19:

   * ConexaoOracle - Exemplo de conexão com o Banco de Dados Oracle.
 * ConexaoOracle - Exemplo de conexão com o Banco de Dados Oracle.
 * [[ConexaoMySQLdb]] - Exemplo de conexão com o Banco de Dados MySQL.
 * [[ConexaoPostgreSQL]] - Exemplo de conexão com o Banco de Dados PostgreSQL.
 * [[EditorDeTabelasMySQL]] - Interface automática minimalista para edição de tabela MySQL a partir de introspecção. (TKinter)
Linha 23: Linha 25:

  
* CriptografiaDidatica - Um exemplo didático de implementação de um algoritmo de (de)criptografia (fraca) em Python. 
   * PyCryptoChavePublica - Exemplo de uso da biblioteca {{{PyCrypto}}} com algoritmo de criptografia de chave pública. 
   * GerandoPasswords - Script gráfico pra fazer senhas rapidamente. 
   * GeradorDeCpf - Gerador de CPFs aleatório. Três versões diferentes para todos os gostos. 
   * VerificadorDeCpf - Módulo contendo funções e classe para verificação de números de CPF. 
   * VerificadorDeCpfparaZope - Mesmo módulo, somente adaptado para rodar no Zope. 
   * VerificadorDeCnpj - Módulo contendo funções e classe para verificação de números de CNPJ. 
 * CriptografiaDidatica - Um exemplo didático de implementação de um algoritmo de (de)criptografia (fraca) em Python.
 * PyCryptoChavePublica - Exemplo de uso da biblioteca {{{PyCrypto}}} com algoritmo de criptografia de chave pública.
 * SenhasAleatorias - Uma função simples que gera senhas aleatórias do tamanho especificado.
* GerandoPasswords - Script gráfico pra fazer senhas rapidamente.
 * GeradorDeCpf - Gerador de CPFs aleatórios. Três versões diferentes para todos os gostos.
 * GeradorDeCnpj - Gerador de CNPJs aleatórios.
* VerificadorDeCpf - Módulo contendo funções e classe para verificação de números de CPF.
 * VerificadorDeCpfparaZope - Mesmo módulo, somente adaptado para rodar no Zope.
 * VerificadorDeCnpjParaZope - Função de validação de CNPJ adaptada para rodar no Zope.
* VerificadorDeCnpj - Módulo contendo funções e classe para verificação de números de CNPJ.
 * VerificadorDeCpfCnpjSimples - Funções de validação de CPF e CNPJ simplificadas e reunidas no mesmo módulo.
Linha 33: Linha 38:

   * FloatFormat - Função para formatar um número do tipo {{{float}}}. 
   * FormatarDatas - Exemplo mostra como formatar datas e somas entre datas usando {{{mx.DateTime}}} e a datetime do proprio python. 
   * FormatarNumeros - Exemplo do uso locale para formatação de números e moedas no formato do pais. 
   * FormatarNumerosBrasil - Funções para formatar números no formato nacional. 
   * FrmtBytes - Formatador de "bytes". 
   * NumeroParaPalavrasEspanhol - Programa que, quando recebe numero, retorna sua forma "por extenso", em espanhol 
   * NumerosRomanos - Conversão de números inteiros para romanos e vice-versa.
   * TiradorDeAcentos - Um tirador de acentos e "verificador de imprimibilidade" de strings UTF-8. 
   * StripHtml - Remove tags HTML de uma string.
   * RenameFiles - Renomeia arquivos seguindo um padrão.
   * CoresNoTerminal - Como utilizar cores no console do Linux e MS-DOS.
   * DateTimeRange - Iterando no tempo.
 * ContaLetras - Conta o total de letras, as vogais e as consoantes de um texto.
 * ContaLetrasUnicode - conta o número de ocorrências de cada letra de A a Z em um arquivo no formato UTF-8. Demonstra o uso de dados Unicode para a redução de caracteres acentuados para os seus equivalentes não acentuados.
* FloatFormat - Função para formatar um número do tipo {{{float}}}.
 * FormatarDatas - Exemplo mostra como formatar datas e somas entre datas usando {{{mx.DateTime}}} e a datetime do proprio python.
 * FormatarNumeros - Exemplo do uso locale para formatação de números e moedas no formato do pais.
 * FormatarNumerosBrasil - Funções para formatar números no formato nacional.
 * FrmtBytes - Formatador de "bytes".
 * NumeroParaPalavrasPortugues - Rotina que transforma um numero inteiro em sua forma por extenso, em Portugues
* NumeroParaPalavrasEspanhol - Programa que, quando recebe numero, retorna sua forma "por extenso", em espanhol
 * NumerosRomanos - Conversão de números inteiros para romanos e vice-versa.
 * TiradorDeAcentos - Um tirador de acentos e "verificador de imprimibilidade" de strings UTF-8.
 * StripHtml - Remove tags HTML de uma string.
 * RenameFiles - Renomeia arquivos seguindo um padrão.
 * CoresNoTerminal - Como utilizar cores no console do Linux e MS-DOS.
 * DateTimeRange - Iterando no tempo.
Linha 48: Linha 55:

  
* ConversaoDeImagens - Um exemplo de como converter uma imagem BMP para JPG usando a biblioteca PIL. 
   * ProcessandoJpeg - Transformar jpegs e bmps da pasta atual para jpegs compressados (muito útil pra poupar um espaço das fotos que tiramos com máquinas digitais)
   * CodigoBarras - Integração com PIL para gerar imagens de código de barras.
 * ConversaoDeImagens - Um exemplo de como converter uma imagem BMP para JPG usando a biblioteca PIL.
 * ProcessandoJpeg - Transformar jpegs e bmps da pasta atual para jpegs compressados (muito útil pra poupar um espaço das fotos que tiramos com máquinas digitais)
 * CodigoBarras - Integração com PIL para gerar imagens de código de barras.
 * ImagemRasterTkinter - Como desenhar com TKinter usando pixels
 * [[ImagemTGA]] - Criação de arquivo binário de imagem em python puro. Uso bem simples dos módulos ''struct'' e ''array'' da biblioteca padrão.
 * CairoPygame - exemplo de uso conjunto das bibliotecas cairo e Pygame para criação de imagens 2D
 * CairoPango - Exemplo de uso da biblioteca de tipografia de alta qualidade, Pango, para criar imagens com texto usando Cairo.
Linha 54: Linha 64:

  
* AdivinhacaoTkinter - Programa para adivinhar número que o usuário pensou, utilizando tkInter     * BarraProgresso - Barra de progresso para uso geral, como, adicionar registros no treeview e/ou adicionar cabeçalho no reportlab.
   * BuscaTkinter - Busca na caixa de texto do Tkinter.
   * GameOfLifeConway - Classe que aplica a regra básica (#R 23/3) do Game Of Life em uma matriz de 0s e 1s.     * HelloWordPyQT
  
* ImagemTkinter - Como inserir uma imagem dentro da tela do Tkinter.
   * MaskEntry - Classe para o Entry do pyGTK com mascára de entrada.     * MenusTkinter - Como criar diferentes tipos de menus em Tkinter.
   * Calculadoras Python        * MiniCalculadora - Calculadora simples com parsing top-down.        * CalculadoraSimples - Calculadora simples.        * CalculadoraTkinter - Funções de bibliotecas padrões Python.        * CalculadoraSimplesTk - Construção detalhada dos frames.        * CalculadoraWxPython - Gerada pelo BOA Constructor.        * CalculadoraQt - Criada com o {{{QtDesigner}}}.        * CalculadoraComercial - Imita uma fita de impressão
   * PyGtkMensagens - Como padronizar suas mensagens no seu aplicativo.     * PyGtkComboBoxEntry - Várias Rotinas Usando {{{ComboBoxEntry}}} no PyGtk     * PyGtkCellRenderCombo - Treeview com Combo      * PyGtkBarraFerramenta - Barra de ferramenta com teclas de atalho.
   * PyGtkTreeView - Exemplo de uso do GTKTreeView, comom tabela. Com célula editável, evento "click" e célula com barra colorida e outras coisinhas mais.
   * QtSignalEmPython - Uma implementação de QT Signals em Python.
   * RenderizadorHtml - Um renderizador de HTML ultra-simples em Tkinter.     * RenderizadorHtmlPyGtk - Um renderizador de HTML ultra-simples em PyGTK.
   * SorteadorDeElemento - Pequeno programa em Tkinter que cadastra elementos e posteriormente sorteia um deles.     * TelaCadastro - Exemplo de tela criada com o glade sendo executa pelo PyGTK.     * Tkinter3dCanvas - Desenha um cubo em 3D num Tkinter.Canvas, com três barras de rolagem para rotacioná-lo.     * TkinterShelve - Um pequeno software de cadastro que usa Tkinter pra interface e Shelve para persistência dos objetos.     * VariavelGlobalpyGtk - Este pequeno aplicativo mostra como transferir as variaveis entre janelas.     * CriacaoDinamicaGtk - Este pequeno estudo, utilizando glade, mostra como criar dinâmicamente campos em uma aplicação.
   * Código Básico do Boa-Constructor - evento de clique em botão e uso fácil de um grid
 * AdivinhacaoTkinter - Programa para adivinhar número que o usuário pensou, utilizando tkInter
* BarraProgresso - Barra de progresso para uso geral, como, adicionar registros no treeview e/ou adicionar cabeçalho no reportlab.
 * BuscaTkinter - Busca na caixa de texto do Tkinter.
 * GameOfLifeConway - Classe que aplica a regra básica (#R 23/3) do Game Of Life em uma matriz de 0s e 1s.
* HelloWorldPyQT - Veja a página ComoUsarPyQt e HelloWorld
* ImagemTkinter - Como inserir um arquivo de imagem dentro da tela do Tkinter.
 * ImagemRasterTkinter - Como desenhar com TKinter usando pixels - especialmente util para plotagem de funções matemáticas
* MaskEntry - Classe para o Entry do pyGTK com mascára de entrada.
* MenusTkinter - Como criar diferentes tipos de menus em Tkinter.
 * Calculadoras Python
* MiniCalculadora - Calculadora simples com parsing top-down.
* CalculadoraSimples - Calculadora simples.
* CalculadoraTkinter - Funções de bibliotecas padrões Python.
* CalculadoraSimplesTk - Construção detalhada dos frames.
* CalculadoraWxPython - Gerada pelo BOA Constructor.
* CalculadoraQt - Criada com o {{{QtDesigner}}}.
* CalculadoraComercial - Imita uma fita de impressão
  * CalculadoraTkGtkQt - 3 toolkits gráficos, 4 operações!
* PyGtkMensagens - Como padronizar suas mensagens no seu aplicativo.
* PyGtkComboBoxEntry - Várias Rotinas Usando {{{ComboBoxEntry}}} no PyGtk
* PyGtkCellRenderCombo - Treeview com Combo
* PyGtkBarraFerramenta - Barra de ferramenta com teclas de atalho.
 * PyGtkTreeView - Exemplo de uso do GTKTreeView, comom tabela. Com célula editável, evento "click" e célula com barra colorida e outras coisinhas mais.
 * QtSignalEmPython - Uma implementação de QT Signals em Python.
 * RenderizadorHtml - Um renderizador de HTML ultra-simples em Tkinter.
* RenderizadorHtmlPyGtk - Um renderizador de HTML ultra-simples em PyGTK.
 * SorteadorDeElemento - Pequeno programa em Tkinter que cadastra elementos e posteriormente sorteia um deles.
* TelaCadastro - Exemplo de tela criada com o glade sendo executa pelo PyGTK.
* Tkinter3dCanvas - Desenha um cubo em 3D num Tkinter.Canvas, com três barras de rolagem para rotacioná-lo.
 * TkinterNdCanvas - Semelhante ao anterior, mas desenha em qualquer número de dimensões.
* TkinterShelve - Um pequeno software de cadastro que usa Tkinter pra interface e Shelve

para persistência dos objetos.

* VariavelGlobalpyGtk - Este pequeno aplicativo mostra como transferir as variaveis entre janelas.
* CriacaoDinamicaGtk - Este pequeno estudo, utilizando glade, mostra como criar dinâmicamente campos em uma aplicação.
 * BásicoBoaConstructor - evento de clique em botão e uso fácil de um grid
 * BotaoDeFecharEmAbasDeGtkNotebook - Artigo sobre como criar páginas em gtk.Notebook que possuam, em suas abas, botões de fechar. Classe completa e funcional ao final.
 * MudarCorDeCelulaEmTreeview - Dicas para mudar cores de células em gtk.TreeView. Três receitas numa página só :)
Linha 89: Linha 105:

  
* AchaMaiorLinhaEmArquivo - Abre um arquivo e retorna a(s) linha(s) de maior comprimento, em uma lista. 
   * BuscaPyBrasil - Código que faz busca por palavras no histórico da lista de discussão python-brasil no Yahoogrupos. 
   * ContarOcorrenciasEmLista - Conta as Ocorrências de um texto em uma lista. Coloca o resultado num dict. 
   * QuickSort - Algoritmo Quick Sort implementado em Python. 
   * RemoverRepetidosLista - Função para remover elementos repetidos de uma lista. 
 * AchaMaiorLinhaEmArquivo - Abre um arquivo e retorna a(s) linha(s) de maior comprimento, em uma lista.
 * BuscaPyBrasil - Código que faz busca por palavras no histórico da lista de discussão python-brasil no Yahoogrupos.
 * ContarOcorrenciasEmLista - Conta as Ocorrências de um texto em uma lista. Coloca o resultado num dict.
 * InterpolatedValuesMapping - Objeto de mapeamento que retorna valores interpolados de forma transparente a partir de um conjunto de dados iniciais
* QuickSort - Algoritmo Quick Sort implementado em Python.
 * RecarregarModulos - Recarrega árvore de dependências de um módulo em interpretador ativo
* RemoverRepetidosLista - Função para remover elementos repetidos de uma lista.
Linha 97: Linha 114:

  
* AutomatizarAtributosSlots - Metaclasses para automatizar a definição de atributos recebidos no método init e o atributo slots. 
   * CacheDeFuncoes - Exemplo de uma função que retorna uma função. A função cache_f() recebe uma função como paramêtro e retorna uma função igual a função original com um cache associado. 
   * DaemonizadorDeProgramas - Módulo para transformar um script em daemon. 
   * ObjectSpace - Armazenando em um cache as instâncias de uma classe automaticamente usando uma metaclasse
   * SimulandoOperadorTernario - Como simular um operador ternário (o ? do C) em Python.
   * ClassAttrTracking - Usando classes como estruturas de dados mantendo os atributos ordenados
 * AutomatizarAtributosSlots - Metaclasses para automatizar a definição de atributos recebidos no método init e o atributo slots.
 * CacheDeFuncoes - Exemplo de uma função que retorna uma função. A função cache_f() recebe uma função como paramêtro e retorna uma função igual a função original com um cache associado.
 * FrozenClosureDecorator - Decorator para congelar as variáveis do contexto onde uma função interna é criada (closure).
* DaemonizadorDeProgramas - Módulo para transformar um script em daemon.
 * ObjectSpace - Armazenando em um cache as instâncias de uma classe automaticamente usando uma metaclasse
 * SimulandoOperadorTernario - Como simular um operador ternário (o ? do C) em Python. (obsoleto)
 * ClassAttrTracking - Usando classes como estruturas de dados mantendo os atributos ordenados
 * ReceitaMonkeyPatch - Decorator e Metaclass para adicionar metodos a classes.
 * StrongTypedMethods - Uso de metaclasses para permitir métodos com tipagem forte, para os que não conseguem largar o vício
 * TailRecursion - Uso de decorator para implementar "Tail Recursion Elimination" e contornar o "Maximum Recursion Depth".
 * StealthDecorator - decorador que manda a função para uma outra classe, e preserva o namespace atual.
Linha 106: Linha 127:

   * LendoXml - Exemplo simples de como ler um arquivo XML com xml.dom.minidom.
   * LendoXml2 - Uma pequena mudança no LendoXml acima, para extrair os valores do nó.
   * LendoXmlComLibxml2 -
Exemplo simples de como ler arquivo XML com Libxml2
   * LimitGet - Como fazer download com a urllib limitando a banda usada.
   * NewsReader - Acesso ao protocolo NNTP e leitura de notícias.
   * PythonToHtml - Pequeno aplicativo que converte códigos fontes em Python para HTML aplicando syntax highlighting. 
   * RankingLinguagens - Exemplo simples porém útil de urllib e regular expressions.
   * ThreadingXmlrpc - Uma classe que implementa multi-thread na classe SimpleXMLRPCServer. 
   * WebSqlObject - Exemplo de armazenamento de dados em Banco de Dados a partir de formulários Web. 
   * WebService - Exemplo de criação e utilização de um webservice. 
   * WsUpload - Exemplo de um webservice para transferência de arquivo para o servidor. 
   * WebSms - Módulo para envio de mensagens para telefone celular via interface web da operadora (Telemig Celular). 
   * TwistedWeb - Exemplo de uso do twisted.web, server tanto para depuração quanto para aprendizado.
 * [[AgendaCGI]] - exemplo de um CGI em único arquivo que processa dados de entrada e os persiste
 * ChatXmlRpcTkinter - uma implementação de um Chat bem simples utilizando XmlRpc e Tkinter como interface gráfica
 * [[CherryPyModWSGI]] -
Exemplo de configurão do Apache para executar aplicações feitas com o framework Web CherryPy e o módulo para o protocolo WSGI para Apache (mod_wsgi).
 * FormatandoXml - Script para formatar
arquivos XML, adicionando identação e quebras de linha, de forma que fiquem tratáveis manualmente. Exemplos de uso do módulo xml.etree.ElementTree e da técnica de MonkeyPatch em Python
 * LendoXml - Exemplo simples de como ler um arquivo XML com xml.dom.minidom.
 *
LendoXml2 - Uma pequena mudança no LendoXml acima, para extrair os valores do nó.
 * LendoXmlComL
ibxml2 - Exemplo simples de como ler arquivo XML com Libxml2
 * LimitGet - Como fazer download com a urllib limitando a banda usada.
 * NewsReader - Acesso ao protocolo NNTP e leitura de notícias.
 * PythonToHtml - Pequeno aplicativo que converte códigos fontes em Python para HTML aplicando syntax highlighting.
 * RankingLinguagens - Exemplo simples porém útil de urllib e regular expressions.
 * ThreadingXmlrpc - Uma classe que implementa multi-thread na classe SimpleXMLRPCServer.
 * XmlRpc - Um exemplo simples de como implementar um cliente e um servidor utilizando a classe SimpleXMLRPCServer.
* WebSqlObject - Exemplo de armazenamento de dados em Banco de Dados a partir de formulários Web.
 * WebService - Exemplo de criação e utilização de um webservice.
 * WsUpload - Exemplo de um webservice para transferência de arquivo para o servidor.
 * WebSms - Módulo para envio de mensagens para telefone celular via interface web da operadora (Telemig Celular).
 * TwistedWeb - Exemplo de uso do twisted.web, server tanto para depuração quanto para aprendizado.
 * ProgramacaoTv - Exemplo de uso do BeautifulSoup extraindo a programação de TV de site na Internet.
Linha 122: Linha 148:

  
* BatteryMonitor - Monitor da bateria de notebooks usando os recursos APM (Linux) 
   * ChamarFuncaoEmDlls - Como chamar funções de uma DLL no Windows. 
   * ChecarConexaoComInternet - Testa se existe uma conexão com a internet. 
   * DesligarLinuxViaSockets - Exemplo de script para desligar máquinas Linux usando Sockets. 
   * ImprimindoWindows - Como imprimir no Windows com as extensões win32 para Python 
   * MapeandoErrosParaExcecoes - Uma idéia para mapear códigos de erro do sistema operacional para exceções. 
   * MonitorandoSocketsComPyGtk - Exemplo de como usar as funções de monitorar IO embutidas em PyGTK para manipular sockets e arquivos de forma assíncrona. 
   * MonitorandoSocketsComTkinter - A mesma idéia do exemplo MonitorandoSocketsComPyGtk, porém usando Tkinter. 
   * PequenoUsoDeSockets - Um exemplo de joguinho utilizando sockets. 
   * MagicVelox - script que faz a autenticação do velox, para quem não aguenta mais o login do provedor, utilizando socket, re e urlopen. 
   * ParametrosNoShell - Entrada de valores no script pela linha de comando. 
   * ProcurarMp3eGerarPlaylist - Pequeno script que procura arquivos MP3 por palavra-chave, gera uma playlist e abre o xmms/winamp pra executá-la. 
   * PyWin32Com - Exemplo de um componente COM (servidor) em Python.
   * OfficeToPdf - Rotina para automação do processo de geração de PDF (e outros formatos também) a partir de arquivos Microsoft Word e Excel através do PDFCreator (Uso extensivo de COM)
   * SocketBasico - Pequena explicação e exemplos do uso de socket (TCP e UDP) com Python.
   * TransferirArquivosViaSockets - Um pequeno exemplo de como transferir arquivos por sockets.
   * UnixLinuxComandosWeb - Aplicação Web que permite executar alguns comandos de Unix e Linux.
 * BatteryMonitor - Monitor da bateria de notebooks usando os recursos APM (Linux)
 * ChamarFuncaoEmDlls - Como chamar funções de uma DLL no Windows.
 * ChecarConexaoComInternet - Testa se existe uma conexão com a internet.
 * DesligarLinuxViaSockets - Exemplo de script para desligar máquinas Linux usando Sockets.
 * ImprimindoWindows - Como imprimir no Windows com as extensões win32 para Python
 * MapeandoErrosParaExcecoes - Uma idéia para mapear códigos de erro do sistema operacional para exceções.
 * MonitorandoSocketsComPyGtk - Exemplo de como usar as funções de monitorar IO embutidas em PyGTK para manipular sockets e arquivos de forma assíncrona.
 * MonitorandoSocketsComTkinter - A mesma idéia do exemplo MonitorandoSocketsComPyGtk, porém usando Tkinter.
 * PequenoUsoDeSockets - Um exemplo de joguinho utilizando sockets.
 * MagicVelox - script que faz a autenticação do velox, para quem não aguenta mais o login do provedor, utilizando socket, re e urlopen.
 * ParametrosNoShell - Entrada de valores no script pela linha de comando.
 * ProcurarMp3eGerarPlaylist - Pequeno script que procura arquivos MP3 por palavra-chave, gera uma playlist e abre o xmms/winamp pra executá-la.
 * PythonNoLugarDeShellScript - Python em substituição a shell script, e exemplo de uma fábrica de objetos (factory)
* PyWin32Com - Exemplo de um componente COM (servidor) em Python.
 * OfficeToPdf - Rotina para automação do processo de geração de PDF (e outros formatos também) a partir de arquivos Microsoft Word e Excel através do PDFCreator (Uso extensivo de COM)
 * SemaforosDeadlock - Pequenos exemplos do uso de semáforos e de como evitar deadlock.
* SocketBasico - Pequena explicação e exemplos do uso de socket (TCP e UDP) com Python.
 * TransferirArquivosViaSockets - Um pequeno exemplo de como transferir arquivos por sockets.
 * UnixLinuxComandosWeb - Aplicação Web que permite executar alguns comandos de Unix e Linux.
Linha 142: Linha 169:

  
* ["Bingo"] - Simula o funcionamento de um bingo um exemplo simples para quem está iniciando
  
* ConstantesEnumeradas - Definição de constantes de forma protegida
  
* ConversordeBases - Funções para conversão de números de qualquer base para qualquer base
  
* CategorizarNadador - Categoriza nadador pela idade. São apresentados duas soluções para o problema, uma usando if/elif/else e outra usando o módulo bisect.     * EnviarEmail - Rotina para enviar e-mail com anexos.     * EnviarEmailHtml - Função para enviar email em html com anexos e imagens
   * ExecutandoEmIntervalos - Quatro formas de se executar periodicamente uma determinada função.     * InterpretadorHq9 - Interpretador da linguagem HQ9+     * IncludeModulo - Um "include()" para Python.     * InteligenciaArtificial - Um exemplo de como usar o módulo PyAIML.     * ["Logging"] - Usando o modulo logging do python
   * ParticionarSequencia - Exemplo de como particionar uma seqüencia em uma lista com um número máximo de elementos.     * ProgramacaoFuncional - Um exemplo de como fazer algo útil fazendo uso da programação funcional.     * ["Py2ExeI18N"] - Como incluir automaticamente o diretorio locale (internationalization via gettext) no pacote gerado pelo Py2Exe
   * Py2ExeSimples - Pequeno script para gerar arquivos executáveis para console a partir de scripts Python.     * Py2ExeCom - Script para gerar bibliotecas com componentes COM.     * ReceitaBarraDeProgresso - Função que implementa uma barra de progresso em tela texto (terminal).     * ResolvedorLabirinto - Resolvedor de labirintos escrito em Python     * ResolvedorLabirintoGrafico - versão do ResolvedorLabirinto que mostra o passo-a-passo graficamente (em PyGame).     * ThreadingBasico - Exemplos básicos das funcionalidades de threading do python
   * TraduzindoSeuPrograma - Como traduzir seu programa usando o gettext.     * WeakList - Especialização da classe List para que não incremente o contador de referência dos objetos contidos nela, e Unit Test da classe.
   * PrologPython - Funções básicas do Prolog implementadas em Python.
 * [[Bingo]] - Simula o funcionamento de um bingo um exemplo simples para quem está iniciando.
 * InterpretadorBrainFuck - Interpretador da linguagem BrainFuck escrito em Python.
* ConstantesEnumeradas - Definição de constantes de forma protegida.
* ConversordeBases - Funções para conversão de números de qualquer base para qualquer base.
 * [[ConvergenciaDeGNA]] - Teste de convergência do gerador de números aleatórios do python.
* CategorizarNadador - Categoriza nadador pela idade. São apresentados duas soluções para o problema, uma usando if/elif/else e outra usando o módulo bisect.
* EnviarEmail - Rotina para enviar e-mail com anexos.
* EnviarEmailHtml - Função para enviar email em html com anexos e imagens
 * ExecutandoEmIntervalos - Quatro formas de se executar periodicamente uma determinada função.
 * [[GuiDB]] - Exemplo de interface gráfica e acesso a banco de dados
* InterpretadorHq9 - Interpretador da linguagem HQ9+
* IncludeModulo - Um "include()" para Python.
* InteligenciaArtificial - Um exemplo de como usar o módulo PyAIML.
* [[Logging]] - Usando o modulo logging do python
 * ParticionarSequencia - Exemplo de como particionar uma seqüencia em uma lista com um número máximo de elementos.
* ProgramacaoFuncional - Um exemplo de como fazer algo útil fazendo uso da programação funcional.
* [[Py2ExeI18N]] - Como incluir automaticamente o diretorio locale (internationalization via gettext) no pacote gerado pelo Py2Exe
 * Py2ExeSimples - Pequeno script para gerar arquivos executáveis para console a partir de scripts Python.
* Py2ExeCom - Script para gerar bibliotecas com componentes COM.
 * QuinePy - Programa que imprime seu próprio código e gera um arquivo indêntico a ele.
* ReceitaBarraDeProgresso - Função que implementa uma barra de progresso em tela texto (terminal).
* ResolvedorLabirinto - Resolvedor de labirintos escrito em Python
* ResolvedorLabirintoGrafico - versão do ResolvedorLabirinto que mostra o passo-a-passo graficamente (em PyGame).
* ThreadingBasico - Exemplos básicos das funcionalidades de threading do python
 * TraduzindoSeuPrograma - Como traduzir seu programa usando o gettext.
* WeakList - Especialização da classe List para que não incremente o contador de referência dos objetos contidos nela, e Unit Test da classe.
 * PrologPython - Funções básicas do Prolog implementadas em Python.
 * WebCam - utilização do módulo VideoCapture para controle de uma WebCam
 * [[RPy]] - Exemplo de como utilizar o módulo RPy para realizar testes estatísticos utilizando-se do programa R
 * BoletoPdf - Exemplo de utilização do Reportlab para construir um boleto e gerar PDF.
 * PolinomiosItertools - Exemplo de implementação de polinômios usando o Itertools
 * InstaladorWindows - Como criar um instalador para Windows sem utilizar py2exe


=== Internacionalização de Programas Em Python ===
 * Utilizando Módulo gettext e locale
----
 . CategoryCategory

----
CategoryHomepage CategoryTemplate
----
CategoryHomepage

Cookbook vem do inglês e significa Livro de Receitas. Esta seção destina-se exatamente a conter trechos úteis de código Python. Aquele mini-aplicativo, método, classe, função ou simplesmente uma dica de uso de Python deve ser colocada aqui.

Receitas

Arquivos

  • ArquivoDeConfiguracao - Leitura e escrita de um arquivo de configuração simples usando o mecanismo de import do Python.

  • ArquivoDeConfiguracaoComConfigParser - Leitura e escrita de um arquivo de configuração simples usando o módulo ConfigParser do Python.

  • DividirArquivosEmVariosCdOuDvd - Script que organiza uma série de arquivos em vários DVDs/CDs. Útil quando você não quer pensar muito ou pra otimizar o uso do DVD/CD.

  • DirFileList - Cria uma lista com todos os arquivos de um determinado diretório recursivamente.

  • ODSheetReader - Leitor de planilhas de cálculo Open Document Format (OpenOffice)

  • PassarByteOrderMarker - Usado para passar direto pelo Byte-Order Marker (UTF BOM) inserido pelo Windows em alguns arquivos.

  • PyInotify : exemplo para manter uma cópia de um arquivo que é deletado pelo processo que o criou.

  • ZIP: CreateZipFile - exeplo de criação de um arquivo zip de dentro do Python

Banco de Dados

  • ConexaoOracle - Exemplo de conexão com o Banco de Dados Oracle.

  • ConexaoMySQLdb - Exemplo de conexão com o Banco de Dados MySQL.

  • ConexaoPostgreSQL - Exemplo de conexão com o Banco de Dados PostgreSQL.

  • EditorDeTabelasMySQL - Interface automática minimalista para edição de tabela MySQL a partir de introspecção. (TKinter)

Criptografia, senhas e validadores

Formatos, datas, números e conversões

  • ContaLetras - Conta o total de letras, as vogais e as consoantes de um texto.

  • ContaLetrasUnicode - conta o número de ocorrências de cada letra de A a Z em um arquivo no formato UTF-8. Demonstra o uso de dados Unicode para a redução de caracteres acentuados para os seus equivalentes não acentuados.

  • FloatFormat - Função para formatar um número do tipo float.

  • FormatarDatas - Exemplo mostra como formatar datas e somas entre datas usando mx.DateTime e a datetime do proprio python.

  • FormatarNumeros - Exemplo do uso locale para formatação de números e moedas no formato do pais.

  • FormatarNumerosBrasil - Funções para formatar números no formato nacional.

  • FrmtBytes - Formatador de "bytes".

  • NumeroParaPalavrasPortugues - Rotina que transforma um numero inteiro em sua forma por extenso, em Portugues

  • NumeroParaPalavrasEspanhol - Programa que, quando recebe numero, retorna sua forma "por extenso", em espanhol

  • NumerosRomanos - Conversão de números inteiros para romanos e vice-versa.

  • TiradorDeAcentos - Um tirador de acentos e "verificador de imprimibilidade" de strings UTF-8.

  • StripHtml - Remove tags HTML de uma string.

  • RenameFiles - Renomeia arquivos seguindo um padrão.

  • CoresNoTerminal - Como utilizar cores no console do Linux e MS-DOS.

  • DateTimeRange - Iterando no tempo.

Imagens

  • ConversaoDeImagens - Um exemplo de como converter uma imagem BMP para JPG usando a biblioteca PIL.

  • ProcessandoJpeg - Transformar jpegs e bmps da pasta atual para jpegs compressados (muito útil pra poupar um espaço das fotos que tiramos com máquinas digitais)

  • CodigoBarras - Integração com PIL para gerar imagens de código de barras.

  • ImagemRasterTkinter - Como desenhar com TKinter usando pixels

  • ImagemTGA - Criação de arquivo binário de imagem em python puro. Uso bem simples dos módulos struct e array da biblioteca padrão.

  • CairoPygame - exemplo de uso conjunto das bibliotecas cairo e Pygame para criação de imagens 2D

  • CairoPango - Exemplo de uso da biblioteca de tipografia de alta qualidade, Pango, para criar imagens com texto usando Cairo.

Interfaces Gráficas

para persistência dos objetos.

Indexação

  • AchaMaiorLinhaEmArquivo - Abre um arquivo e retorna a(s) linha(s) de maior comprimento, em uma lista.

  • BuscaPyBrasil - Código que faz busca por palavras no histórico da lista de discussão python-brasil no Yahoogrupos.

  • ContarOcorrenciasEmLista - Conta as Ocorrências de um texto em uma lista. Coloca o resultado num dict.

  • InterpolatedValuesMapping - Objeto de mapeamento que retorna valores interpolados de forma transparente a partir de um conjunto de dados iniciais

  • QuickSort - Algoritmo Quick Sort implementado em Python.

  • RecarregarModulos - Recarrega árvore de dependências de um módulo em interpretador ativo

  • RemoverRepetidosLista - Função para remover elementos repetidos de uma lista.

Linguagem (Avançado)

  • AutomatizarAtributosSlots - Metaclasses para automatizar a definição de atributos recebidos no método init e o atributo slots.

  • CacheDeFuncoes - Exemplo de uma função que retorna uma função. A função cache_f() recebe uma função como paramêtro e retorna uma função igual a função original com um cache associado.

  • FrozenClosureDecorator - Decorator para congelar as variáveis do contexto onde uma função interna é criada (closure).

  • DaemonizadorDeProgramas - Módulo para transformar um script em daemon.

  • ObjectSpace - Armazenando em um cache as instâncias de uma classe automaticamente usando uma metaclasse

  • SimulandoOperadorTernario - Como simular um operador ternário (o ? do C) em Python. (obsoleto)

  • ClassAttrTracking - Usando classes como estruturas de dados mantendo os atributos ordenados

  • ReceitaMonkeyPatch - Decorator e Metaclass para adicionar metodos a classes.

  • StrongTypedMethods - Uso de metaclasses para permitir métodos com tipagem forte, para os que não conseguem largar o vício

  • TailRecursion - Uso de decorator para implementar "Tail Recursion Elimination" e contornar o "Maximum Recursion Depth".

  • StealthDecorator - decorador que manda a função para uma outra classe, e preserva o namespace atual.

XML, HTML e Internet

  • AgendaCGI - exemplo de um CGI em único arquivo que processa dados de entrada e os persiste

  • ChatXmlRpcTkinter - uma implementação de um Chat bem simples utilizando XmlRpc e Tkinter como interface gráfica

  • CherryPyModWSGI - Exemplo de configurão do Apache para executar aplicações feitas com o framework Web CherryPy e o módulo para o protocolo WSGI para Apache (mod_wsgi).

  • FormatandoXml - Script para formatar arquivos XML, adicionando identação e quebras de linha, de forma que fiquem tratáveis manualmente. Exemplos de uso do módulo xml.etree.ElementTree e da técnica de MonkeyPatch em Python

  • LendoXml - Exemplo simples de como ler um arquivo XML com xml.dom.minidom.

  • LendoXml2 - Uma pequena mudança no LendoXml acima, para extrair os valores do nó.

  • LendoXmlComLibxml2 - Exemplo simples de como ler arquivo XML com Libxml2

  • LimitGet - Como fazer download com a urllib limitando a banda usada.

  • NewsReader - Acesso ao protocolo NNTP e leitura de notícias.

  • PythonToHtml - Pequeno aplicativo que converte códigos fontes em Python para HTML aplicando syntax highlighting.

  • RankingLinguagens - Exemplo simples porém útil de urllib e regular expressions.

  • ThreadingXmlrpc - Uma classe que implementa multi-thread na classe SimpleXMLRPCServer.

  • XmlRpc - Um exemplo simples de como implementar um cliente e um servidor utilizando a classe SimpleXMLRPCServer.

  • WebSqlObject - Exemplo de armazenamento de dados em Banco de Dados a partir de formulários Web.

  • WebService - Exemplo de criação e utilização de um webservice.

  • WsUpload - Exemplo de um webservice para transferência de arquivo para o servidor.

  • WebSms - Módulo para envio de mensagens para telefone celular via interface web da operadora (Telemig Celular).

  • TwistedWeb - Exemplo de uso do twisted.web, server tanto para depuração quanto para aprendizado.

  • ProgramacaoTv - Exemplo de uso do BeautifulSoup extraindo a programação de TV de site na Internet.

Sistema Operacional

Outras Implementações e exemplos

  • Bingo - Simula o funcionamento de um bingo um exemplo simples para quem está iniciando.

  • InterpretadorBrainFuck - Interpretador da linguagem BrainFuck escrito em Python.

  • ConstantesEnumeradas - Definição de constantes de forma protegida.

  • ConversordeBases - Funções para conversão de números de qualquer base para qualquer base.

  • ConvergenciaDeGNA - Teste de convergência do gerador de números aleatórios do python.

  • CategorizarNadador - Categoriza nadador pela idade. São apresentados duas soluções para o problema, uma usando if/elif/else e outra usando o módulo bisect.

  • EnviarEmail - Rotina para enviar e-mail com anexos.

  • EnviarEmailHtml - Função para enviar email em html com anexos e imagens

  • ExecutandoEmIntervalos - Quatro formas de se executar periodicamente uma determinada função.

  • GuiDB - Exemplo de interface gráfica e acesso a banco de dados

  • InterpretadorHq9 - Interpretador da linguagem HQ9+

  • IncludeModulo - Um "include()" para Python.

  • InteligenciaArtificial - Um exemplo de como usar o módulo PyAIML.

  • Logging - Usando o modulo logging do python

  • ParticionarSequencia - Exemplo de como particionar uma seqüencia em uma lista com um número máximo de elementos.

  • ProgramacaoFuncional - Um exemplo de como fazer algo útil fazendo uso da programação funcional.

  • Py2ExeI18N - Como incluir automaticamente o diretorio locale (internationalization via gettext) no pacote gerado pelo Py2Exe

  • Py2ExeSimples - Pequeno script para gerar arquivos executáveis para console a partir de scripts Python.

  • Py2ExeCom - Script para gerar bibliotecas com componentes COM.

  • QuinePy - Programa que imprime seu próprio código e gera um arquivo indêntico a ele.

  • ReceitaBarraDeProgresso - Função que implementa uma barra de progresso em tela texto (terminal).

  • ResolvedorLabirinto - Resolvedor de labirintos escrito em Python

  • ResolvedorLabirintoGrafico - versão do ResolvedorLabirinto que mostra o passo-a-passo graficamente (em PyGame).

  • ThreadingBasico - Exemplos básicos das funcionalidades de threading do python

  • TraduzindoSeuPrograma - Como traduzir seu programa usando o gettext.

  • WeakList - Especialização da classe List para que não incremente o contador de referência dos objetos contidos nela, e Unit Test da classe.

  • PrologPython - Funções básicas do Prolog implementadas em Python.

  • WebCam - utilização do módulo VideoCapture para controle de uma WebCam

  • RPy - Exemplo de como utilizar o módulo RPy para realizar testes estatísticos utilizando-se do programa R

  • BoletoPdf - Exemplo de utilização do Reportlab para construir um boleto e gerar PDF.

  • PolinomiosItertools - Exemplo de implementação de polinômios usando o Itertools

  • InstaladorWindows - Como criar um instalador para Windows sem utilizar py2exe

Internacionalização de Programas Em Python

  • Utilizando Módulo gettext e locale



CategoryHomepage CategoryTemplate


CategoryHomepage