2009-11-10 12 views
21

Po raz pierwszy natknąłem się na to. Wystarczy wydrukować listę i każdy element wydaje się mieć u przed nim tjCo oznacza "u" na liście?

[u'hello', u'hi', u'hey'] 

Co to znaczy i dlaczego lista musiałaby to przed każdym elemencie?

Ponieważ nie wiem, jak często to robię, jeśli chcesz zobaczyć, jak do tego trafiłem, z przyjemnością edytuję wpis.

+0

Kiedy spojrzał składnię dla stałych łańcuchowych, co widziałaś tam? http://docs.python.org/library/stdtypes.html#sequence-types-str-unicode-list-tuple-buffer-xrange –

Odpowiedz

45

to wskazanie unicode string. podobne do r'' dla nieprzetworzonego łańcucha.

>>> type(u'abc') 
<type 'unicode'> 
>>> r'ab\c' 
'ab\\c' 
+0

Ach, myślałem, że r "ma coś wspólnego z wyrażeniem regularnym? – Federer

+6

Zwykle jest używany do wyrażeń regularnych, więc możemy pisać takie rzeczy jak 'r '/ [\ t] + /'' zamiast '//\\ t] +/'' (zwróć uwagę na podwójny ukośnik odwrotny - nie masz uciec od rzeczy w surowych ciągach, chyba że uciekniesz z podsumowaniem). –

+2

jest często używany w wyrażeniu regularnym, aby uniknąć wszystkich uciekających ukośników odwrotnych. – SilentGhost

9

Po prostu u oznacza, że ​​następujący ciąg jest ciągiem znaków Unicode (w przeciwieństwie do zwykłego łańcucha ASCII). Nie ma nic wspólnego z listą, która zawiera ciągi (Unicode).

4

Wierzę, że u”przedrostek tworzy ciąg Unicode zamiast regularnych ASCII