Python précis et concis - Python 3.4 et 2.7
Python 3.4 et 2.7
- Par Mark Lutz
Hors collection
2019
272 pages
Citer cet ouvrage
- LUTZ, Mark,
- Lutz, Mark.
- Lutz, M.
Tableau 2 – Opérations de comparaison et opérations booléennes
Pour implémenter les expressions de comparaison, reportez-vous à la fois aux méthodes de classe proposant une comparaison riche (par exemple, __lt__ pour <) en 3.X et 2.X, et à la méthode générale __cmp__ en 2.X, qui sont décrites dans la section « Méthodes de surchargement d’opérateur ».
Tableau 3 – Opérations sur les types séquence (chaînes, listes, tuples, octets, tableaux d’octets)
Reportez-vous aussi à la section « Protocole d’itération » pour de plus amples informations sur ces méthodes et leur fonctionnement. S’il est défini, __contains__ est préféré à __iter__, qui est lui-même préféré à __getitem__.
Tableau 5 – Opérations de mapping (dictionnaires)
En Python 2.X, l’appartenance à la clé peut aussi être codée comme D.has_key(k). Cette méthode est supprimée en Python 3.X au profit de l’expression in, qui est également préférée en 2.X. Voir la section « Dictionnaires ».
Tableau 6 – Opérations numériques (pour tous les types numériques)
L’opérateur / invoque __truediv__ en Python 3.X, mais __div__ en Python 2.X, à moins que la division véritable soit activée. Voir la section « Notes sur l’utilisation des opérateurs » pour la sémantique de la division.
Tableau 7 – Constantes chaînes des codes d’échappement
\Uhhhhhhhh a une longueur exacte de 8 chiffres en hexadécimal (h) ; \u et \U ne peuvent être utilisés que pour des littéraux de chaînes Unicode.
Tableau 10 – Convertisseurs de séquences
La forme de compréhension de liste peut (éventuellement) être plus lente que list(), et peut ne pas se révéler optimale dans ce contexte spécifique de conversion. En Python 2.X seulement, map(None, X) a le même résultat que list(X) dans ce contexte, bien que cette forme de map() ait été supprimée en Python 3.X.
Tableau 11 – Convertisseurs de chaînes et d’objets
Dans la version 2.2 et ultérieure, les fonctions de conversion (par exemple, int(), float(), str()) servent aussi de constructeurs de classes et elles peuvent être sous-classées. En Python 3.X, tous les types sont des classes, et toutes les classes sont des instances de la classe type.