A algum tempo desenvolvi uma mini biblioteca chamada pycompat para verificar a versão do Python e do sistema de uma simples e funcional. Se não me engano essa ideia surgiu após olhar o código fonte do Requests, mais precisamente este arquivo.
Para quem costuma desenvolver em Python utilizando compatibilidade entre versões, por exemplo 2.7 e 3.4, sabe que temos alguns problemas relacionados a nomenclatura de módulos ou funções que foram alterados na versão 3.
Por exemplo no Python 2.7 fazemos:
urllib2.urlopen
Já no Python 3 fazemos:
urllib.request.urlopen
Instalação do pycompat
pelo PyPI:
pip install pycompat
ou pelo código fonte:
python setup.py install
Utilização
from pycompat import python as py, system as sys
if py.is2xx:
from urllib2 import urlopen
elif py.is3xx:
from urllib.request import urlopen
else:
raise ValueError('Versão não suportada.')
res = urlopen('http://butecopensource.com/')
print(res.status)
if sys.is_windows:
home = 'C:/Users/'
else:
home = '/home/'
print(home)
Compatibilidade
O pycompat é para funcionar desde a versão 1.0 do Python até a 3.5 e o PyPy. Os testes foram feitos a partir da 1.5 até a 3.4 e o PyPy.
Se você gostou do projeto não deixe de comentar no post e seguir as futuras alterações no GitHub. Se você encontrou um bug ou deseja sugerir algo clique aqui.
Não deixe de seguir o nosso RSS. Até mais.