Kuljo wrote: > Kuljo wrote: >>I'm so sorry to bore you with this trivial problem. Allthou: I have string >>having 0x0a as new line, but I should have \n instead.
> I have found this in the meantime: >>>>nl="\\"+"n" Note: this is unnecessary. You could just do nl='\\n' instead, and you don't need the variable "nl" either, which by the way is confusingly named. Your variable "nl" is actually bound to the two character sequence \ followed by n instead of a "newline". Is that really what you wanted? >>>>text_new=replace(text_old, chr(10), nl) This use of replace() is deprecated. Use text_old.replace() instead. > It works. For some definitions of "works". This only works if you wanted the *single* character represented by '\x0a' to turn into the *two* characters backslash-followed-by-letter-n. The following you might find instructive: >>> old = 'some\x0atext' >>> old 'some\ntext' >>> print old some text >>> old.encode('string-escape') 'some\\ntext' >>> print old.encode('string-escape') some\ntext This will turn other control characters into their equivalent two-character escaped representation as well, such as \t and \r, as necessary. -Peter -- http://mail.python.org/mailman/listinfo/python-list