Maison > développement back-end > Tutoriel Python > Pourquoi un préfixe \'u\' apparaît-il avant les valeurs de chaîne en Python ?

Pourquoi un préfixe \'u\' apparaît-il avant les valeurs de chaîne en Python ?

Barbara Streisand
Libérer: 2024-11-03 13:24:03
original
781 Les gens l'ont consulté

Why does a

Signification du symbole "u" qui apparaît avant les valeurs de chaîne en Python

Lors du rendu d'un formulaire, une valeur de chaîne spécifique Pourquoi y a-t-il un symbole "u" devant le ?

Lorsque vous voyez un symbole comme celui-ci, cela indique que la chaîne est une chaîne Unicode. Unicode est un moyen de représenter des caractères supplémentaires qui ne peuvent pas être représentés en ASCII standard. Si vous voyez un "u", cela signifie que vous utilisez Python 2. Dans Python 3, les chaînes sont Unicode par défaut, mais dans Python 2, les chaînes Unicode se distinguent par un « u » initial. Les réponses suivantes se concentreront sur Python 2.

Il existe plusieurs façons de créer des chaînes Unicode.

<code class="python">>>> u'foo'
u'foo'
>>> unicode('foo') # Python 2のみ
u'foo'</code>
Copier après la connexion

Cependant, « u » est essentiel pour exprimer quelque chose comme ce qui suit (traduit ci-dessous) :

<code class="python">>>> val = u'Ознакомьтесь с документацией'
>>> val
u'\u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0435\u0439'
>>> print(val)
Ознакомьтесь с документацией</code>
Copier après la connexion

Dans Python 2, les chaînes Unicode et non Unicode sont interopérables dans la plupart des cas.

D'autres symboles pouvant apparaître incluent un "r" pour le symbole "brut", qui indique une chaîne qui n'interprète pas les contrecoups. Ceci est très utile pour écrire des expressions régulières.

<code class="python">>>> 'foo\"'
'foo"'
>>> r'foo\"'
'foo\"'</code>
Copier après la connexion

Dans Python 2, les chaînes unicode et non-unicode peuvent être égales.

<code class="python">>>> bird1 = unicode('unladen swallow')
>>> bird2 = 'unladen swallow'
>>> bird1 == bird2
True</code>
Copier après la connexion

Cependant, dans Python 3, ils ne sont pas égaux.

<code class="python">>>> x = u'asdf' # Python 3
>>> y = b'asdf' # bはバイト文字列を示す
>>> x == y
False</code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal