[python] upper a lower

2009-01-28 Tema obsahu mtip
Zdravím všechny přítomné v konferenci,

narazil jsem na problém ve znakové sadě.
Kód v modulu:

# -*- coding: cp1250 -*-
import locale
print locale.setlocale(locale.LC_ALL, 'Czech_Czech Republic.1250')
print 'ž', 'ž'.upper()

Můžete mi prosím někdo vysvětlit proč to nevypisuje ž a Ž
a co dělám za chybu ?
Respektive jak mám porovnat shodnost malých a velkých písmen v unicode
a nebo v str s nastavenou znakovou sadou ?
  

-- 
Mirek N.


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] upper a lower

2009-01-28 Tema obsahu Jan Janech

zdravim,

staci dat unicode retazec. V ASCII znak ž neexistuje.

# -*- coding: utf8 -*-

import locale
print locale.setlocale(locale.LC_ALL, 'sk_SK.utf8')
print 'ž', 'ž'.upper() # nefunguje
print u'ž', u'ž'.upper() # funguje

Jan Janech


mtip wrote:

Zdravím všechny přítomné v konferenci,

narazil jsem na problém ve znakové sadě.
Kód v modulu:

# -*- coding: cp1250 -*-
import locale
print locale.setlocale(locale.LC_ALL, 'Czech_Czech Republic.1250')
print 'ž', 'ž'.upper()

Můžete mi prosím někdo vysvětlit proč to nevypisuje ž a Ž
a co dělám za chybu ?
Respektive jak mám porovnat shodnost malých a velkých písmen v unicode
a nebo v str s nastavenou znakovou sadou ?
  




--


Ing. Jan Janech
Katedra softverovych technologii
Fakulta riadenia a informatiky
Zilinska Univerzita
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] capacitor

2009-01-28 Tema obsahu Terho Lindqvist
TEM TYÖ JA ELINKEINOMINISTERIÖ


Helsingissä 27. päivänä toukokuuta 2008


Mielipiteitten esittäminen julkisuuteen nettiin valtiovallan
erityissuojeluksessa.

Voi esittää mielipiteitä ja antaa ydinkriittisiä lausuntoja kirjallisesti
toimittamalla ne työ- ja elinkeinministeriön kirjaamoon tai ministeriön
viralliseen sähköpostiosoitteseen kuulemi...@tem.fi) viimeistään 25.07.2008.
Annetuissa lausunnoissa pyydetään viittaamaan diaarinumeroon
820/815/2008.Kaiki innolla mukaan nuijimaan ydinrikosta ihmiskuntaa vasteen
kohden lopullista päättävää Nyyrbergin oikeudenkäyntiään! Sinä, juuri sinä
laiskahkosti olutta ja naksuja ryystävä olet tähtäimessämme! Ota ikionkeesi
ja koska gallubin mukaan inhoat syvästi ydinvoimarikosta ja olet kasvavassa
2/3 osan maailmankattavan ydinvastustaiuuden syvä toivo PIRISTY! Jo YKSI
keskeinen esiin tuotu ydinhaitta voi upottaa koko läpimädän
korruptioydinlaivan pysyvästi. Tavalla, josta miljoonat lapsenlapsemme
tulevat kultaisin patsain kiittämään.

*JUURI SINÄ TÄSSÄ JA NYT. Ydinvoima on tieten tehty valtiomonopolinen
ydinsodan julistus kansaamme vastaan. Jonka estämisessä JUURI sinulla on se
tärkein ääni esittää loppumisen puolesta. EU onkin jo antanut Euroopan
laajuiset uudisenergian kasvuvaateet vuoteen 2020 +25% lisäpakottein
ydinvoimaloiden alasajoksi. Vuoteen 2050 mennessä luku taas jo tuplataan
maailman KAIKEN ydinasevarusteluenergian tappamiseksi maailman kartalta. Nyt
sinulla rakas kansalainen on oma osasi tässä taistelussasi ydinkiimaa
vastaan! Toimi tässä ja nyt. Koska syntymättömät kärsijät eivät siihen
kykene. Ydinvoima tappaa jo nyt maailmalla 7,3miljoonaa vuosittain. Aiotko
havahtua vasta kun nollia tulee lisää ja mitään ei ole enää tehtävissä?

*
**Suunnattoman sukseen ja megasuosion saavuttanut YVA-07 raporttisaetti oli
jo niin verraton setti, että kaipaa VÄLITÖNTÄ jatkoaan. Maamme brutaali
tapaa sensuroida ydinkritiikiä on synnyttänyt pahaa verta aina muistamiimme
Lipposhaukkujaisiin EU/Saksaa myöten. Siksi myös TEM/Posiva ja muut
huolestuneet ydinterroriepäillyvarjostuneet haluavat turvata  iloksemme
Sisäministerikontroloinnin saavuttamattoman ja lehtisensuroinneista
piittaamattoman VIRALISEN YDINKRITIIKIN KANAVAN suojelukseensa! Ja koska
YVA-07 oli kiistaton kritiikinkannuksen suksee päättää siis Posiva/TEM ja
itse valtiohallinto edustajiensa (ent. KTM)Jorma Aurelan, Posivan Äikään,
Seppälän, Friiberien yms. ja vastaavien massiivisin verotukiaistuein
toimeenpaneman kamppanjakoostein aukaista JÄLLEEN ovet ydinkritiikivyörystä
saranoiltaan paiskovan vapaan ydinkritiikifoorumin! Haluatko, että SINUN
kaukoviisaan ja Ytimekkään ydinvastaviisautesi kylkeen tulee Suomen
karjuvan valtioleijonan vahvistama virallinen leimaus ja notuuli vapaaseen
luentaan ilman Sisäministeriestoja?

**Haluatko, että tulevassa ydinrikosoikeudenkäynnissä Haagissa ydinala
vastaa juuri SINUN esittämiin ydinrikossyytteisiin ihmisyyttä vastaan?
Varmista ihmeessä eturivin syyttäjän paikka lastemme riemuksi. Ylpeänä he
voivat kertoa olleensa syyttämässä TVO/Posivoita jo ennen syntymäänsä
kauttasi. Vielä vuosituhansien päästä varmistat materiaalisi säilymisen
historiallisena raportina ajastaikaan ja olet ikiajan kiitelty
ydinvastavirtuoosi ilman ajan hampaan purentaa. Kaiken tämän, ja paljon
enemmän juuri sinulle haluaa ydinhallintomme/TEM taata kätösinsä vaivojaan
säästämättä. Kaikki intomiellä mukaan. Ydinala pyytää raippoja, ennenkaikkea
julkista ruoskintaa ja konstailemattoman aitoja syitä ydinvastaisen Suomen
hurjaan järkiytymiseen ydinkritikitsunamein. Tällä kertaa teemamme
olkoon:SATA VALITUSTA RIKKI, ettei TEM:n tarvitse enää huokailla  H.S:n
tiedotteensa mitättömänpienin alle sadan valituksin!
*

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] upper a lower

2009-01-28 Tema obsahu mtip

JJ staci dat unicode retazec. V ASCII znak ž neexistuje.

JJ # -*- coding: utf8 -*-

JJ import locale
JJ print locale.setlocale(locale.LC_ALL, 'sk_SK.utf8')
JJ print 'ž', 'ž'.upper() # nefunguje
JJ print u'ž', u'ž'.upper() # funguje

Zkusil jsem, ale pod WIN nefunguje.
Napíše mi to:  locale.Error: unsupported locale setting
Možná proto, že cs_CZ.utf8 ani cs_CZ.UTF-8 tam neexistuje.
Navíc print chr(142) vypíše Ž.
Což mi ukazuje, že v ASCII cp1250 ž i Ž existuje.

Asi sem to dobře nepochopil ?


-- 
Mirek N.

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] upper a lower

2009-01-28 Tema obsahu Pavel Kosina

mtip napsal(a), dne 28.1.2009 10:21:

Zdravím všechny přítomné v konferenci,

narazil jsem na problém ve znakové sadě.
Kód v modulu:

# -*- coding: cp1250 -*-
import locale
print locale.setlocale(locale.LC_ALL, 'Czech_Czech Republic.1250')
print 'ž', 'ž'.upper()

Můžete mi prosím někdo vysvětlit proč to nevypisuje ž a Ž
a co dělám za chybu ?
Respektive jak mám porovnat shodnost malých a velkých písmen v unicode
a nebo v str s nastavenou znakovou sadou ?
  


možná pomůže http://www.py.cz/Cestina2X#azen-po-esku.

Jinak funguje toto:

# -*- coding: cp1250 -*-

import locale
# print locale.setlocale(locale.LC_ALL, 'Czech_Czech Republic.1250')
print u'ž', u'ž'.upper()

i toto:

# -*- coding: cp1250 -*-

import locale
print locale.setlocale(locale.LC_ALL, 'Czech_Czech Republic.1250')
print u'ž'.encode(cp1250), u'ž'.upper().encode(cp1250)

Asi ne všude (myslím Linux), ale na win jo.

--
geon
Pavel Kosina

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] upper a lower

2009-01-28 Tema obsahu Tomas Brabenec

A zkoušel jsi toto: print unicode(ž).upper()

T.

Dne 28.1.2009 11:20, mtip napsal(a):

JJ  staci dat unicode retazec. V ASCII znak ž neexistuje.

JJ  # -*- coding: utf8 -*-

JJ  import locale
JJ  print locale.setlocale(locale.LC_ALL, 'sk_SK.utf8')
JJ  print 'ž', 'ž'.upper() # nefunguje
JJ  print u'ž', u'ž'.upper() # funguje

Zkusil jsem, ale pod WIN nefunguje.
Napíše mi to:  locale.Error: unsupported locale setting
Možná proto, že cs_CZ.utf8 ani cs_CZ.UTF-8 tam neexistuje.
Navíc print chr(142) vypíše Ž.
Což mi ukazuje, že v ASCII cp1250 ž i Ž existuje.

Asi sem to dobře nepochopil ?


   

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] upper a lower

2009-01-28 Tema obsahu zu1234

Možná jsem mimo, ale v jakém kódování je ten soubor-program
a tedy to písnenu 'ž' vlastně uložen?

Tohle # -*- coding: utf8 -*- říká poythonu že je to v utf8.
Ale je to pravda?
Není to náhodou cp1250?

'ž'
Hex Dec Chr
cp1250: 9E  158 ž   382
cp852:  A7  167 ž   382
iso8859-2:  BE  190 ž   382

UTF-8 (hex) 0xC5 0xBE (c5be)
http://www.fileformat.info/info/unicode/char/017e/index.htm

ZU



Tomas Brabenec napsal(a):

A zkoušel jsi toto: print unicode(ž).upper()

T.

Dne 28.1.2009 11:20, mtip napsal(a):

JJ  staci dat unicode retazec. V ASCII znak ž neexistuje.

JJ  # -*- coding: utf8 -*-

JJ  import locale
JJ  print locale.setlocale(locale.LC_ALL, 'sk_SK.utf8')
JJ  print 'ž', 'ž'.upper() # nefunguje
JJ  print u'ž', u'ž'.upper() # funguje

Zkusil jsem, ale pod WIN nefunguje.
Napíše mi to:  locale.Error: unsupported locale setting
Možná proto, že cs_CZ.utf8 ani cs_CZ.UTF-8 tam neexistuje.
Navíc print chr(142) vypíše Ž.
Což mi ukazuje, že v ASCII cp1250 ž i Ž existuje.

Asi sem to dobře nepochopil ?


   

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] upper a lower

2009-01-28 Tema obsahu Pavel Kosina

mtip napsal(a), dne 28.1.2009 13:52:

if re.search(u'ž', u'Ž',re.IGNORECASE):
print 'stejne'
else:
print 'ruzne'

re.search s IGNORECASE - nefunguje nikdy - locale nelocale
  


u re.IGNORECASE je v manuálu napsáno:

   [...]  This is not affected by the current locale.

nejsem si příliš jist překladem, ale snad něco jako: nefunguje v locale. 
I kdyby to tak nebylo, chybí ti tam další přepínače: 
re.UNICODE|re.LOCALE|re.IGNORECASE 


Proč to tedy neuděláš takto, že nevynecháš sporné re.IGNORECASE, a 
nepoužiješ lower():


print bool(re.search(u'ž', u'Ž'.lower(),re.UNICODE|re.LOCALE))


Jen dodatek: pozor na to, že tisk někdy nefunguje proto, že nesedí 
kodování výstupu Pythonu a Shellu (ve win je to cp852). Důležitější pro 
tebe snad je, aby se to vnitřně chovalo správně, a že se to bude hůřeji 
tisknout, to je možná již podružné..


--

geon
Pavel Kosina

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python