Qual versão do Python para usar para máxima compatibilidade

votos
14

Se eu estava indo para iniciar um projeto de código aberto usando Python que versão devo usar para garantir que a grande maioria dos usuários pode usá-lo em seu sistema?

Eu sou o tipo de pessoa que salta rapidamente para a próxima versão (que eu vou fazer quando Python 3 sai), mas muitas pessoas podem ser mais conservador, se sua versão atual parece estar funcionando bem. Qual versão teria atingido o ponto doce, mas ainda permitir-me para desfrutar das melhorias recentes e sofisticadas de linguagem?

Publicado 06/09/2008 em 03:22
fonte usuário
Em outras línguas...                            


6 respostas

votos
6

Como python está em uma espécie de fase de transição para python 3 com compatibilidade com versões anteriores quebra Eu não acho que é uma boa ideia para ir única python 3. Com base na linha de tempo , haverá, pelo menos, uma ou duas versões seguinte da série 2.x depois de 2,6 / 3,0 em Outubro.

Ao lado de não ter python 3 disponível em suas plataformas de destino, vai demorar algum tempo até que importantes bibliotecas python externos vai ser portado e utilizável em python 3.

Assim como Mateus sugere ficar em 2,4 / 2,5 e mantendo a transição plano para python 3 em mente é uma escolha sólida.

Respondeu 06/09/2008 em 03:44
fonte usuário

votos
4

Eu não vi um sistema com menos de 2.3 instalado por algum tempo. Principalmente 2.4 + é instalado por padrão para a maioria OS eu uso agora. 2.3 é apenas em uma máquina Solaris mais velho. distros Linux tendem a ter 2.4 +, assim como o OS X.

IIRC, 2,4 tem muito das características 2.5 faz, mas utilizável apenas com

from __future__ import *
Respondeu 06/09/2008 em 03:27
fonte usuário

votos
1

Python 2.3 ou 2.2 se você pode viver sem os muitos módulos que foram adicionados (por exemplo, data e hora, CSV, registro optparse, zipimport), não estiver usando SSL, e estão dispostos a adicionar clichê para Verdadeiro / Falso.

2.4 adicionado decoradores. gerador de expressões, invertidas (), ordenadas () e os módulos subprocesso e decimais. Embora estes são tudo muito bom, é fácil escrever código Pythonic sem eles (assumindo que o seu projecto não fazem uso pesado deles).

2,5 adiciona-se, importações relativo, melhor suporte de 64 bits, e um pouco de velocidade. Você poderia viver sem todos aqueles com bastante facilidade.

2.6 não é liberado (embora seja muito próximo), por isso, enquanto ele pode apelar para os desenvolvedores, ele não tem a compatibilidade que você está depois.

Dê uma olhada nas notas de lançamento para 2.3, 2.4, 2.5, eo próximo 2,6 (uso http://www.python.org/download/releases/2.Y/highlights/ onde 'Y' é a versão menor).

FWIW, para SpamBayes apoiamos 2.2 e acima (2.2 requer a instalação do pacote de e-mail separadamente). Esta não é muito desgastante, mas os 2,3 adições são úteis o suficiente e 2,3 idade suficiente que provavelmente vai cair 2,2 antes do tempo.

Respondeu 07/09/2008 em 06:21
fonte usuário

votos
1

Você pode usar diferentes versões do python em cada máquina.

Codificação algo novo, eu não usaria nada menos do que python2.5. Você pode fazer apt-get install python2.5no estábulo Stock debian.

Para Windows, realmente não se preocupar com isso. É muito fácil de instalar o msi python2.5.

Se os usuários não pode ser incomodado para fazer isso, você pode implantar um executável com py2exe (tão simples) e construir um instalador com Inno Setup (novamente simples), então ele irá se comportar como uma aplicação de janelas padrão e usará suas próprias DLLs python , então não há necessidade de ter o Python instalado.

Como Pedro disse: tenha em mente a transição para 3.0, mas não construir sobre ela ainda.

Respondeu 06/09/2008 em 06:25
fonte usuário

votos
0

Você deve usar Python 2.7 , a versão final das principais do Python 2.

Python 3.x atualmente tem limitado o apoio biblioteca 3rd-party, e muitas vezes não é instalado por padrão. Então você está olhando para a série 2.x.

Python 2.7 é essencialmente totalmente compatível com 2.xs. anteriormente Além disso, ele pode dar avisos deprecation sobre coisas que não funcionam em Python 3. (Particularmente, ele vai pagar para manter os testes de unidade, e para ser pedante sobre Unicode- vs. byte-strings.) As advertências irá forçá-lo a escrever código bom que o automatizado 2to3ferramenta será capaz de traduzir para Python 3.

Guido van Rossum oficialmente recomenda a manutenção de uma única base de código Python 2 , e usando 2to3 em conjunto com o teste de unidade para produzir versões compatíveis para Python 2 e 3. (PEP Desde 3000 foi escrito, o Python 2.6 foi substituída por 2,7).

Respondeu 08/10/2011 em 07:40
fonte usuário

votos
0

Se o projeto vai ser mainstream e será executado em Linux a única escolha sensata é 2.4 - apenas porque é uma dor para obter mais nada instalado como padrão na empresa Linuxes.

Em qualquer caso, qualquer moderna OS vai / pode ter 2.4 ou mais recente.

Respondeu 10/01/2010 em 10:36
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more