Sujet : Re: Propriétés Unicode dans les regex Python
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.lang.pythonDate : 09. Nov 2022, 17:07:28
Autres entêtes
Organisation : There's no cabale
Message-ID : <tkgj81$kkr$1@cabale.usenet-fr.net>
References : 1 2 3 4 5 6 7 8
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0 SeaMonkey/2.53.1
Le 09/11/2022 à 15:41, Stefan Ram a écrit :
>
for i in range( 1114112 ): # Python 3.9
Je ne comprends pas le commentaire. Cette syntaxe ne fonctionnerait pas
pour les versions de Python inférieures à 3.9 ?
Je pensais que d'autres versions de Python pourraient
supporter d'autres versions d'Unicode avec plus ou moins
de points de code. Par conséquent, le numéro "1114112"
pourrait devoir être modifié.
Je comprends mieux.
Mais du coup tu peux supprimer ce commentaire, car Unicode garantit
qu'il n'existera jamais de point de code au delà de U+10FFFF, en
décimal 1114111. On n'aurait pas eu cette limitation en UTF-8, qui
permettait au départ des points de code jusqu'à U+7FFFFFFF (en 6
octets), mais la limitation vient d'UTF-16.
On peut noter que cette limitation d'UTF-16, qui impose à Unicode
la limitation à U+10FFFF, limite du même coup UTF-8 : on n'aura
jamais en UTF-8 d'encodage nécessitant plus de 4 octets.
-- Olivier Miakinen