Pergunta

Python 3.0 está em beta com uma versão final chegando em breve. Obviamente, isso vai levar algum tempo significativo para a adoção geral e para que possa eventualmente substituir 2.x.

Eu estou escrevendo um tutorial sobre certos aspectos da programação Python. Eu estou querendo saber se eu deveria fazê-lo em Python 2.x ou 3.0? (Não que a diferença é enorme)

a 2.x tutorial é provavelmente mais útil agora, mas seria bom para começar a produzir 3,0 tutoriais.

Alguém tem pensamentos?

(é claro que eu poderia fazer as duas coisas, mas eu preferiria fazer um ou outro)

Foi útil?

Solução

Comece com 2.x. A maioria das bibliotecas existentes estará em 2.x por um longo tempo. No ano passado, Guido mesmo disse que seria "dois anos" até que você precisava aprender 3,0; ainda há mais um ano esquerda. Pessoalmente, eu acho que vai ser mais longo. Pessoas escrevendo código em 2.x pode aprender a usar a ferramenta 2to3 e tem o código que funciona em ambas as versões. Não há 3to2, por isso código escrito para python 3 é significativamente menos valioso.

Isso é para não mencionar como decepcionante será para os seus alunos a aprender que python 3 não estiver instalado em seu computador Linux ( "/usr/bin/python" será 2.x python para os próximos 5 anos, pelo menos), que há não django para Python 3, há wxWindows para Python 3, no GTK para Python 3, não trançado para python 3, no PIL para python 3 ... a força real do Python tem sido sempre na sua extensa coleção de bibliotecas, e há muito poucas bibliotecas para Python 3 agora.

Se o seu tutorial é bem escrito, você deve facilmente ser capaz de atualizá-lo para Python 2.6, 2.7, e, eventualmente, python 3.

Outras dicas

Van Rossum (criador de python) explica que "se você está começando uma coisa nova marca, você deve usar 3.0." Assim, a maioria das pessoas que olham para começar deve mesmo começar com 3.0. Será útil especialmente porque há provavelmente muito poucos lá fora agora.

artigo

Saiba Python 3.0, como contagiosa sugere.

Python 2.x não é muito diferente, parece haver uma grande quantidade de FUD sobre os vez menores diferenças entre eles. Claro, as diferenças são grandes o suficiente para que a maioria dos programas terá de ser modificado, mas quase todas as modificações são simples (como alterar declaração print a função print).

Na verdade, Python 2.6 pode opcionalmente permitir que todos os novos recursos sintáticos de Python 3.0. É um processo de transição muito-bem-pensamento para fora.

Python 2.x foi o tempo suficiente para construir algumas tutoriais já, mas 3k tem muito menos recursos disponíveis. Alguns introdução nível 3k coisas provavelmente veria o uso de uso mais geral. Portanto, a menos que você está adaptando a um sub-domínio específico que não tem quaisquer recursos python, 3k seria de maior uso.

Depende do seu público. Se for uma audiência geral, e você pretende deixá-lo postado por um longo tempo, eu sugiro olhar para a frente e indo com 3.0. Por outro lado, se é para um projeto ou grupo que está indo fazer o trabalho em um futuro próximo, Python 2 provavelmente fazer mais sentido.

As diferenças são pequenas o suficiente para que ele realmente não vai importar muito.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top