Escapando caracteres especiales en Python [tip]

Actuliazación: json is the way

Supongamos que tenemos un texto como este:
Bla
blablabla\ /
blabla

Y queremos representarlo todo en una línea sin perder información, como hacerlo? def miniscape(s):

return str([s])[2:-2]

Resultado: \nBla\nblablabla\ /\nblabla\n

Y para darle la vuelta? def miniunscape(s):

i = 0

while True:

   try:

       x = s.index("\\x", i)

       if not((x > 0) and (s[x-1] == "\\")):

           s = s[:x]+chr(int(s[x+2:x+4],16))+s[x+4:]

       i = x + 1

   except:

       break

reptable = [("\\","\"),("\n","\n"),("\'","'"),("\a","\a"),

               ("\\b","\b"),("\\f","\f"),("\\r","\r"),("\\t","\t"),

               ("\\v","\v")]

for r in reptable:

   i = 0

   while True:

       try:

           x = s.index(r[0], i)

           if not((x > 0) and (s[x-1] == "\\")):

               s = s[:x]+r[1]+s[x+2:]

           i = x + 1

       except:

           break

return s

En pastebin [ http://pastebin.com/5uvf3tBK ]

Y ya está, nos vemos

untagged

[Cheatsheet] de variables inseguras en PHP » « Como monitorear un terminal desde otro [tip]