Maison >développement back-end >Tutoriel Python >Cet article vous explique la différence entre choisir Python2 et Python3

Cet article vous explique la différence entre choisir Python2 et Python3

Tomorin
Tomorinoriginal
2018-08-23 17:47:442774parcourir

Pour les débutants, ils savent seulement que python2 et Python3 sont deux générations de versions, mais ils ne connaissent pas les différences entre les deux générations. Cet article présentera les différences entre Python2 et. Python3.

print n'est plus une instruction, mais une fonction. Par exemple, c'était autrefois print 'abc' mais maintenant c'est print('abc')

Mais python2.6+ peut utiliser from __future__ import print_function pour obtenir la même fonction :

#py2
print("hello")#等价print(“hello”)
#py3
print("hello")

Dans Python 3, il n'y a pas de classes à l'ancienne, seulement des nouvelles- classes de style, ce qui signifie qu'il n'est pas nécessaire d'utiliser l'objet de classe Foobar (comme celui-ci) : passer Explicitement l'objet de sous-classe
mais il est préférable de l'ajouter. La principale différence est que l'ancien style est un type de classe et le nouveau. le style est un type de type


Original 1/2 (Divisant deux entiers) le résultat est 0, maintenant il est 0,5


python 2.2+ Tout ce qui précède peut être utilisé de __future__ import division pour implémenter les fonctionnalités modifiées, et notez que // remplace la précédente / opération
Le nouveau format de la méthode de formatage de chaîne remplace l'erreur %. Cette méthode est disponible en str et unicode depuis python2.6+. en même temps, python3 prend toujours en charge l'opérateur %

xrange est renommé range
Une série de fonctions et de méthodes intégrées ont également été modifiées, qui renvoient toutes des objets itérateurs au lieu de listes ou de tuples, tels que filter, map, dict.items, etc.


!= remplace 6d267e5fab17ea8bc578f9e7e5e1570b Python2 est rarement utilisé par les gens < >sauf Exception, e devient except (Exception) car e

Seules les versions python2.5 et inférieures ne prennent pas en charge cette syntaxe. python2.6 est pris en charge Non Quelque chose de nouveau


exec devient une fonction.

similaire au changement de print(), avant que ce soit une déclaration

* Principalement en raison de changements dans la bibliothèque de classes, la structure organisationnelle a changé. ; urllib.parse De tels changements

* Le changement le plus important n'est pas mentionné, prise en charge des octets et des chaînes UNICODE natives, l'objet Unicode est supprimé, str est la chaîne Unicode native, bytes Ceci remplace la chaîne précédente C'est le noyau. .




Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn