python - python 中的 C 风格转义

标签 python

如何转义(和取消转义)Python 中字符串的 C 转义字符(换行符、斜杠等)?

我猜 JSON.encode( string) 可以做到这一点,但是有更好的方法吗?

最佳答案

在 Python 2.7 中使用 str.encode('string-escape'):

>>> '12\t34\n'.encode('string-escape')
'12\\t34\\n'
>>> '12\\t34\\n'.decode('string-escape')
'12\t34\n'

使用 str.encode('unicode-escape')str.encode('unicode-escape').decode('utf-8'):

>>> '12\t34\n'.encode('unicode-escape')
b'12\\t34\\n'
>>> b'12\\t34\\n'.decode('unicode-escape')
'12\t34\n'

>>> '12\t34\n'.encode('unicode-escape').decode('utf-8')
'12\\t34\\n'
>>> '12\\t34\\n'.encode('utf-8').decode('unicode-escape')
'12\t34\n'

关于python - python 中的 C 风格转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17877982/

相关文章:

python - Win32api 没有在 python 中使用 GetCursorPos() 给出正确的坐标

python - 无法在 sqlite3 python 中对关闭的游标进行操作

python - 如何在mongoengine python中聚合组

python - 使用空格键启动和停止 Python turtle

python - 在父类中实现继承方法

python - 将值添加到稀疏矩阵中的非零元素

python - pyqt 'Ui_Form' 对象没有属性 'show'

python - 在QListView中选择一个项目的信号是什么?

python - 如何返回堆栈中的最后一个元素

python - 整数算法/方法的对称密码