Article View: pl.comp.lang.python
Article #27528Re: String, unicode, dziwny problem i 5 pytań - długie
From: Jan Kaliszewski
Date: Fri, 18 Jun 2010 23:31
Date: Fri, 18 Jun 2010 23:31
67 lines
2852 bytes
2852 bytes
***************************************************************************
Errata, bardzo przepraszam, niedospanie :(
[przyklady od czwartego do szóstego powinny zawierać "jaźń" a *nie* u"jaźń"
inaczej gubi się cały sens; przesyłąm jeszcze raz cały post, poprzednią
wersję proszę zapomnieć :)]
***************************************************************************
PS2. Jeszcze uwaga do fragmentu mojego posta z
"...JAKIES_KODOWANIE_ZRODEL..."
-- chodziło mi o zobrazowanie tego, że stosowanie literałów unikodowych
(z literą u przed cudzysłowem, np. u"żółć" czy u'jaźń') uniezależnia
wartość
tak tworzonej zmiennej napisowej od tego, jakie jest kodowanie źródeł
programu.
Wszystkie poniższe fragmenty kodu przypiszą zmiennej `a` *identyczną*
zawartość:
# coding: utf-8
a = u"jaźń"
for element in a:
print ord(element)
# ^ wypisano 4 wartości (unikodowe code point'y): 106, 96, 378, 324
# coding: iso-8859-2
a = u"jaźń"
for element in a:
print ord(element)
# ^ wypisano 4 wartości (unikodowe code point'y): 106, 96, 378, 324
# coding: cp1250
a = u"jaźń"
for element in a:
print ord(element)
# ^ wypisano 4 wartości (unikodowe code point'y): 106, 96, 378, 324
Natomiast każdy z poniższych przypisze zmiennej `a` *inną* zawartość:
# coding: utf-8
a = "jaźń"
for element in a:
print ord(element)
# wypisano 6 liczb: 106, 96, 197, 186, 197, 132
# coding: iso-8859-2
a = "jaźń"
for element in a:
print ord(element)
# wypisano 4 liczby: 106, 96, 188, 241
# coding: cp1250
a = "jaźń"
for element in a:
print ord(element)
# wypisano 4 liczby: 106, 96, 159, 241
--
Jan Kaliszewski (zuo)
Technical Details
Message-ID:
<op.veirm3lhfvx12t@jerzozwiesz.localdomain>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!nntp.aster.pl!newsread.aster.pl!newsread1.aster.pl!not-for-mailReferences:
<hvb91g$rpp$1@node2.news.atman.pl> <op.veidzb06fvx12t@jerzozwiesz.localdomain>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!nntp.aster.pl!newsread.aster.pl!newsread1.aster.pl!not-for-mail From: "Jan Kaliszewski" <zuo@chopin.edu.pl> Newsgroups: pl.comp.lang.python Subject: Re: String, unicode, dziwny problem i 5 pytań - długie Date: Sat, 19 Jun 2010 01:31:41 +0200 Organization: Aster Sp. z o.o. Lines: 67 Message-ID: <op.veirm3lhfvx12t@jerzozwiesz.localdomain> References: <hvb91g$rpp$1@node2.news.atman.pl> <op.veidzb06fvx12t@jerzozwiesz.localdomain> NNTP-Posting-Host: 62.121.72.3 Mime-Version: 1.0 X-Trace: newsread.aster.pl 1276903763 97167 212.76.33.132 (18 Jun 2010 23:29:23 GMT) X-Complaints-To: abuse@aster.pl NNTP-Posting-Date: Fri, 18 Jun 2010 23:29:23 +0000 (UTC) User-Agent: Opera Mail/10.10 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit