O módulo webbrowser permite abrir uma URL no navegador do usuário. Só isso, simples assim. Por exemplo: import webbrowser webbrowser.open(“http://visie.com.br”) E o site da Visie será aberto no navegador do usuário. Muito útil se você está fazendo um programa para desktop ou mesmo um script para o terminal. No caso de scripts para terminal, se…
Script para converter bancos de dados MDB para scripts MySQL no Linux: https://github.com/elcio/mdb2mysql Um oferecimento Visie e Aviso Brasil 😉
O Arthur me indicou e eu quase chorei ao ver:
Teste aí: sudo apt-get install cowsay Depois rode: cowsay Funciona… O cowsay também pode receber texto na entrada padrão: date|cowsay Isso permite usos razoavelmente criativos: lynx –dump http://news.google.com.br | grep “^\[” | grep -v “»” \ | sed -e “s/.*\]//g” | sort -R | head -n 1|cowsay Você pode colocar seu Ubuntu para te dar…
https://github.com/elcio/visualdal Críticas, sugestões e, claro, pull requests são muito bem-vindos!
Nosso presente de natal para os desenvolvedores do Brasil: API gratuita de consulta de CEP. A Visie é parceira de tecnologia da Aviso Brasil. Nós fornecemos tecnologia para o Correio Control, e como parte do negócio, precisamos ter a base de endereços sempre atualizada e sincronizada com o Diretório Nacional de Endereços. Vimos que muita gente oferece…
Veja: >>> class Class: … def um(self): … return 1 … >>> c=Class() >>> c.um() 1 >>> def dois(self): … return 2 … >>> Class.dois=dois >>> c.dois() 2 >>> Class.tres=lambda self:3 >>> c.tres() 3 >>> Class.um=lambda self:’Um modificado.’ >>> c.um() ‘Um modificado.’ As classes em Python são completamente dinâmicas. Você pode acrescentar métodos quando quiser…
Python é uma linguagem open-source, com uma extensa biblioteca. E os módulos da biblioteca são escritos em Python. Alguns módulos, como pickle e StringIO, tem versões em C mais rápidas (cPickle e cStringIO) mas as versões em Python são mantidas para que você possa ler os fontes. Veja como descobrir onde estão os fontes de…
Há muitas situações em que uma função faz cálculos e operações para obter valores e, ao final, deve montar uma string com esses valores. Nesta situação, muita gente monta um dicionário com os valores e usa string formatting para gerar a string a ser retornada. Por exemplo: # -*- encoding: utf-8 -*- import string,random template=”’Sugestões…
Dizem que Delfim Neto dizia que números, quando bem torturados, são capazes de confessar qualquer coisa. Eu concordo. Sempre que você ouvir números impressionantes gaste algum tempo pensando, aplique um pouco de matemática básica e duvide um pouco do que você ouviu. Vi no Facebook hoje o pessoal compartilhando esse artigo: Paulistas compram mais carros…
A dica de hoje não é muito útil. Pelo menos eu nunca usei para nada realmente sério. Mas é bem divertida: >>> t=’All your base are belong to us.’ >>> t.encode(‘rot-13’) ‘Nyy lbhe onfr ner orybat gb hf.’ Rot-13 é um encoding comum do Python. Você pode escrever código em rot-13 também, se indicar o…
O pacote cclive, para download de vídeos do YouTube na linha de comando, é uma reescrita do clive mais eficiente, com menor consumo de memória e menos dependências. Para instalar: $ sudo apt-get install cclive E para usar: $ cclive http://www.youtube.com/watch?v=8fvTxv46ano Isso vai baixar o vídeo na pasta atual. Simples e indolor. Mas qual a…
Essa é bem legal. Temos três listas: >>> a=[1,2,3] >>> b=[4,5,6] >>> c=[‘a’,’b’,’c’] Veja: >>> zip(a,b,c) [(1, 4, ‘a’), (2, 5, ‘b’), (3, 6, ‘c’)] Simples e útil, não? E se as listas tiverem tamanhos diferentes? >>> c=[‘a’,’b’] >>> zip(a,b,c) [(1, 4, ‘a’), (2, 5, ‘b’)] O resultado será truncado para o tamanho da menor…
O pacote libtext-lorem-perl contém um gerador de Lorem Ipsum para o seu terminal. Eu tinha até feito um script para isso antes de saber da existência desse pacote. Para instalar: $ sudo apt-get install libtext-lorem-perl E para usar: $ lorem Para gerar vários parágrafos, use a opção -p informando quantos parágrafos você quer: $ lorem…
Atendendo a pedidos, estamos levando para Curitiba o Workshop “Alta Performance com WordPress”, onde você poderá aprender a preparar seu WordPress para receber milhares de usuários simultâneos. Veja mais detalhes no site do evento.
Boa parte das APIs do HTML5 já estão disponíveis hoje para a maioria dos navegadores e, com um pouco de conhecimento e uma pitada de javascript, é possível desenvolver hoje aplicações com geoposicionamento, funcionamento offline, conexão em tempo real com o servidor, gráficos vetoriais e todo um novo conjunto de recursos de interface. Por que…
Python tem duas funções muito interessantes: any e all. A função any recebe uma lista (ou outro objeto interável) e retorna True se algum dos elementos for avaliado como True. Já all só retorna True se todos os elementos forem avaliados como True. Veja: >>> everybody=[1,2,3,4] >>> anybody=[0,1,0,2] >>> nobody=[0,0,0,0] >>> any(everybody) True >>> any(nobody)…
O módulo gzip nos permite ler e escrever em arquivos .gz sem nenhum trabalho. Veja: >>> import gzip >>> f=gzip.open(‘teste.txt.gz’,’w’) >>> f.write(‘Hello!\n’) 7 >>> f.close() >>> $ gunzip teste.txt.gz $ cat teste.txt Hello! $ gzip teste.txt $ python Python 2.7.3 (default, Apr 20 2012, 22:39:59) [GCC 4.6.3] on linux2 Type “help”, “copyright”, “credits” or “license”…
Vamos promover um Workshop em Curitiba em Julho. Que assunto você gostaria que abordássemos? Responde lá.
Quando você executa o trivial comando cd o shell (seja o bash ou o zsh) procura pelo diretório informado nos caminhos indicados na variável de ambiente CDPATH. Se não houver uma variável CDPATH, o shell procurará no diretório atual. Veja: elcio@vaio:~$ cd 5cms bash: cd: 5cms: Arquivo ou diretório não encontrado elcio@vaio:~$ export CDPATH=.:~/projetos elcio@vaio:~$…