Return the escaped version of string s with "\\\"", "\\n" and "\\t" escaped as "[escaped-backslash]", "[escaped-newline]" and "[escaped-tab]". >>> unescape(escape("foo")) == "foo" True >>> escape(r'foo \\t foo \\n foo \\\\ foo \\ foo \\"bar\\"') 'foo [escaped-tab] foo [escaped-n
(s)
| 70 | |
| 71 | |
| 72 | def escape(s): |
| 73 | """Return the escaped version of string s with "\\\"", "\\n" and "\\t" escaped as |
| 74 | "[escaped-backslash]", "[escaped-newline]" and "[escaped-tab]". |
| 75 | |
| 76 | >>> unescape(escape("foo")) == "foo" |
| 77 | True |
| 78 | >>> escape(r'foo \\t foo \\n foo \\\\ foo \\ foo \\"bar\\"') |
| 79 | 'foo [escaped-tab] foo [escaped-newline] foo \\\\\\\\ foo \\\\ foo [escaped-quote]bar[escaped-quote]' |
| 80 | """ |
| 81 | assert type(s) is str |
| 82 | for raw_value, escaped_value in ESCAPE_MAP.items(): |
| 83 | s = s.replace(raw_value, escaped_value) |
| 84 | return s |
| 85 | |
| 86 | |
| 87 | def unescape(s): |
no test coverage detected