[Python-de] socket und umlaute

Olaf 'Ruebezahl' Radicke olaf_rad at gmx.de
Fre Nov 21 17:47:05 CET 2003


Also erstmal Danke für eure Geduld! Und ich fasse noch
mal das Ergebnis für mich zusammen:

Meinen Unicode-String "command" wandel ich mit 
command.encode("Latin-1") um weil ich mein XML-String
sowieso als ISO-8859-1 kodieren und schicke das Ergebnis
über mein Socket. Was ich da jetzt rüber geschickt
habe, kann ich jetzt normal  mit print ausgeben lassen.
Das PostgreSQL-Modul pg schluckt das so aber auch noch
nicht, (ob wohl es eigentlich kein Unicode mehr sein kann)
so das ich hier auch noch mal ein command.encode("Latin-1")
verwenden muss. - Aber dann geht das und in in meiner
DB stehen dann auch tatsächlich Umlaute.

Python ist nach wie vor meine beliebteste Programmiersprache,
aber die fehlende Typensicherheit halte ich für ein Mangel.

Erstens, weil kein überladen von Methoden möglich ist.
Zweitens, weil Python schneller sein könnte, wenn zwischen
Typen unterschieden würde.
Drittens, wegen obigen Problem.
Viertens wegen den Problemen die auftreten können wie
in dem Beispiel-Code unten.

str_vier = "4"
int_vier = 4

print "vier und vier sind..."
if str_vier == int_vier:
    print "gleich"
elif str_vier != int_vier:
    print "ungleich"
else:
    print "nichts von beiden"

print "vier plus vier sind: ",(str_vier + str_vier)
print "...aber auch: ", (int_vier + int_vier)

zwischenspeicher = str_vier 
str_vier = int_vier
int_vier = zwischenspeicher

print "ist ", int(str_vier), " jetzt ein int oder str?"
print "ist ", str(int_vier), " jetzt ein int oder str?


MfG
Olaf Radicke

-- 
===================================================
"Meine Meinung steht fest. Bitte verwirren sie mich
nicht mit Tatsachen!"
                          Unbekannt.
===================================================