python code..

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mook
User
Beiträge: 1
Registriert: Montag 22. März 2004, 09:30

Hallo,

ich wollte gern mal fragen was dieser code ganz genau macht?
ist das eine schlichte konvertierung von string zu html?
was passiert aber wenn da fuer string statt charset=iso-8859-1
andere sprache wie zb. eine asiatische charset=EUC-KR steht.
ich merke, dass dabei die woerter nicht richtig aufgehen, also
am ende abgeschnitten wird von einem ganzen zeichen.
mit charset=iso-8859-1, bzw. mit alphabet zeichen gibt es dieses problem nicht, aber mit anderen sprachen. gibt es eine loesung?

(in der parmater liste steht: a)

Code: Alles auswählen

s=""
for b in a:
  if b == "\n":
     b="<br>"
  s=s+b
return s
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi mook,

ich hab deinen Code mal in code-tags gesetzt.
Der Code macht in einem String aus den Zeilenumbrüchen "\n" die html-tags "<br>". bei Zeichensätzen mit 16bit geht das dann bei manchen Zeichen schief.
Wenns nur um das Ersetzen der Zeilenumbrüche geht würde ich mit StringIO arbeiten

Code: Alles auswählen

from cStringIO import StringIO
s=""
sfile = StringIO(a)
for line in sfile: # String Zeilenweise auslesen
    s = s+line.rstrip()+"<br/>"
sfile.close()
return s
Die Methode rstrip() löscht whitespaces am Ende einer Zeile, also auch Zeilenumbrüche.


Gruß

Dookie
[edit]überflüssige Beiträge gelöscht[/edit]
Antworten