Python possède une fonction intégrée escape() analogue aux addslashes de PHP, mais pas de fonction unescape() (stripslashes), ce qui dans mon esprit est plutôt ridicule.
expressions régulières à la rescousse (code non testé):
p = re.compile('\\(\\\S)')
p.sub('\1',escapedstring)
En théorie qui prend quoi que ce soit de la forme \\ (pas des espaces) et retourne \ (même char)
modifier: Sur une inspection plus poussée, les expressions régulières de Python sont brisées comme un enfer;
>>> escapedstring
'This is a \\n\\n\\n test'
>>> p = re.compile(r'\\(\S)')
>>> p.sub(r"\1",escapedstring)
'This is a nnn test'
>>> p.sub(r"\\1",escapedstring)
'This is a \\1\\1\\1 test'
>>> p.sub(r"\\\1",escapedstring)
'This is a \\n\\n\\n test'
>>> p.sub(r"\(\1)",escapedstring)
'This is a \\(n)\\(n)\\(n) test'
En conclusion, que diable, Python.
sauvez-moi des millions de jours. +1 –