Python 2 vs Python 3: Qual é a diferença entre Python 2.xe Python 3.x?

O que é Python 2?

Python 2 tornou o processo de desenvolvimento de código mais fácil do que as versões anteriores. Ele implementou detalhes técnicos da Proposta de Melhoria do Python (PEP). Python 2.7 (última versão em 2.x) não está mais em desenvolvimento e em 2020 será descontinuado.

Neste tutorial, você aprenderá,

O que é Python 3?

Python 3 é uma versão mais recente do Linguagem de programação Python que foi lançado em dezembro de 2008. Esta versão foi lançada principalmente para corrigir problemas existentes no Python 2. A natureza dessas mudanças é tal que o Python 3 era incompatível com o Python 2. É incompatível com versões anteriores .

Alguns recursos do Python 3 foram portados para versões Python 2.x para facilitar o processo de migração no Python 3. Como resultado, para qualquer organização que estava usando a versão Python 2.x, migrar seu projeto para 3.x precisava de muitos alterar. Essas mudanças não se relacionam apenas a projetos e aplicativos, mas também a todas as bibliotecas que fazem parte do ecossistema Python.

DIFERENÇA CHAVE

  • A sintaxe do Python 3 é mais simples e fácil de entender, enquanto a sintaxe do Python 2 é comparativamente difícil de entender.
  • O armazenamento padrão de strings do Python 3 é Unicode, enquanto os armazenamentos do Python 2 precisam definir o valor da string Unicode com 'u'.
  • O valor das variáveis ​​do Python 3 nunca muda, enquanto no Python 2 o valor da variável global será alterado ao usá-lo dentro do loop for.
  • As exceções do Python 3 devem ser colocadas entre parênteses, enquanto as exceções do Python 2 devem ser colocadas entre notações.
  • As regras de comparação de ordenação do Python 3 são simplificadas, enquanto as regras de comparação de ordenação do Python 2 são complexas.
  • O Python 3 oferece a função Range () para realizar iterações, ao passo que, no Python 2, o xrange () é usado para iterações.

Por que você deve aprender Python 2?

Google Trends Python 2 x Python 3

Embora o Python 2 seja uma versão de código aberto antiga, aqui é onde você ainda precisa aprender o Python 2:

  • Para se tornar um engenheiro de DevOps, você precisa trabalhar com ferramentas de gerenciamento de configurações como puppet ou ansible. Aqui, você precisa trabalhar com essas duas versões.
  • Se o código da sua empresa escrito em Python 2, você precisará aprender a trabalhar com isso
  • Se sua equipe de desenvolvimento está trabalhando em um projeto que depende de bibliotecas ou software de terceiros específicos que você não consegue portar para o Python 3, então o Python 2 é a única opção disponível para você.

Por que você deve usar Python 3?

Stack Overflow Questions Python 2 vs. Python 3

Aqui, estão os principais motivos para usar as versões Python 3.x:

  • Python 3 oferece suporte a técnicas modernas, como IA, aprendizado de máquina e ciência de dados
  • Python 3 é apoiado por uma grande comunidade de desenvolvedores Python. Obter suporte é fácil.
  • É mais fácil aprender a linguagem Python em comparação com as versões anteriores.
  • Oferece um poderoso kit de ferramentas e bibliotecas
  • Misturável com outras línguas

História do Python 2

  • Python 2.0 - 16 de outubro de 2000
  • Python 2.1 - 17 de abril de 2001
  • Python 2.2 - 21 de dezembro de 2001
  • Python 2.3 - 29 de julho de 2003
  • Python 2.4 - 30 de novembro de 2004
  • Python 2.5 - 19 de setembro de 2006
  • Python 2.6 - 1º de outubro de 2008
  • Python 2.7 - 3 de julho de 2010

História do Python 3

  • Python 3.0 - 3 de dezembro de 2008
  • Python 3.1 - 27 de junho de 2009
  • Python 3.2 - 20 de fevereiro de 2011
  • Python 3.3 - 29 de setembro de 2012
  • Python 3.4 - 16 de março de 2014
  • Python 3.5 - 13 de setembro de 2015
  • Python 3.6 - outubro de 2016
  • Python 3.7 - junho de 2018.

Principais diferenças entre Python 2 e Python 3

Aqui está a principal diferença entre Python 2 e Python 3:

Diferença entre Python 2.x e Python 3.x

Base de comparação Python 3 Python 2
Data de lançamento

20082000
Impressão de função

imprimir ('olá')imprimir 'olá'
Divisão de InteirosSempre que dois inteiros são divididos, você obtém um valor flutuanteQuando dois inteiros são divididos, você sempre fornece um valor inteiro.
Unicode

No Python 3, o armazenamento padrão de strings é Unicode.Para armazenar o valor da string Unicode, você precisa defini-los com 'u'.
Sintaxe

A sintaxe é mais simples e de fácil compreensão.A sintaxe do Python 2 era relativamente difícil de entender.
Regras de comparação de pedidosNesta versão, as regras de comparação de pedidos foram simplificadas.As regras de comparação de pedidos são muito complexas.
Iteração

A nova função Range () introduzida para realizar iterações.No Python 2, o xrange () é usado para iterações.
Exceções

Deve ser colocado entre parênteses.Deve ser colocado entre notações.
Vazamento de variáveis

O valor das variáveis ​​nunca muda.O valor da variável global mudará ao usá-lo dentro do loop for.
Compatibilidade com versões anterioresNão é difícil portar o python 2 para o python 3, mas nunca é confiável.O Python versão 3 não é compatível com versões anteriores do Python 2.
Biblioteca

Muitos desenvolvedores recentes estão criando bibliotecas que você só pode usar com Python 3.Muitas bibliotecas mais antigas criadas para Python 2 não são compatíveis com versões futuras.

Código de exemplo de Python 2 vs. Python 3

Python 3

 def main(): print('Hello World!') if __name__== '__main__': main() 

Python 2

 def main(): print 'Hello World!' if __name__== '__main__': main() 

Qual versão do Python usar?

Quando se trata das diferenças entre Python 2 e Python 3 hoje, a versão Python 3 é a vencedora absoluta. Isso porque o Python 2 não estará disponível após 2020. A adoção em massa do Python 3 é a direção clara do futuro.

Depois de considerar o declínio do suporte para a linguagem de programação Python 2 e benefícios adicionais de atualizações para Python 3, é sempre aconselhável que um novo desenvolvedor selecione a versão 3 do Python. No entanto, se um trabalho exige recursos do Python 2, esse seria um único motivo convincente para use esta versão.

Resumo

  • O Python 2 tornou o processo de desenvolvimento de código mais fácil do que as versões anteriores. Ele implementou detalhes técnicos da Proposta de Melhoria do Python (PEP). Python 2.7 (última versão em 2.x) não está mais em desenvolvimento e em 2020 será descontinuado.
  • Python 3 é uma versão mais recente da linguagem de programação Python lançada em dezembro de 2008. Esta versão foi lançada principalmente para corrigir problemas existentes no Python 2. A natureza dessas mudanças é tal que o Python 3 era incompatível com o Python 2. É incompatível com versões anteriores.
  • No Python 2, as regras de comparação de pedidos foram simplificadas.
  • No Python 3, as regras de comparação de pedidos são muito complexas.
  • Quando se trata de diferenças entre Python 2 e 3 hoje, a versão Python 3 é a vencedora absoluta.