如何在Python中实现js的escape?

js:

>>>escape(a)
"%E7%AE%97%E4%B8%8D%E4%B8%8A%E5%A4%A7%E7%A5%9E%EF%BC%8C%E6%88%91%E5%B0%B1%E6%98%AF%E5%88%92%E6%B0%B4%E7%9A%84"
>>>decodeURIComponent("%E7%AE%97%E4%B8%8D%E4%B8%8A%E5%A4%A7%E7%A5%9E%EF%BC%8C%E6%88%91%E5%B0%B1%E6%98%AF%E5%88%92%E6%B0%B4%E7%9A%84")
"算不上大神,我就是划水的"

a的原始数据为b'\xc3\xa7\xc2\xae\xc2\x97\xc3\xa4\xc2\xb8\xc2\x8d\xc3\xa4\xc2\xb8\xc2\x8a\xc3\xa5\xc2\xa4\xc2\xa7\xc3\xa7\xc2\xa5\xc2\x9e\xc3\xaf\xc2\xbc\xc2\x8c\xc3\xa6\xc2\x88\xc2\x91\xc3\xa5\xc2\xb0\xc2\xb1\xc3\xa6\xc2\x98\xc2\xaf\xc3\xa5\xc2\x88\xc2\x92\xc3\xa6\xc2\xb0\xc2\xb4\xc3\xa7\xc2\x9a\xc2\x84'
如何在python中得到相同输出呢?

阅读 5.3k
1 个回答

python3.x

>>> import urllib
>>> z="算不上大神,我就是划水的"
>>> bytes(z,'utf8').decode('l1')
'ç®\x97ä¸\x8dä¸\x8a大ç¥\x9eï¼\x8cæ\x88\x91å°±æ\x98¯å\x88\x92æ°´ç\x9a\x84'
>>> bytes(z,'utf8')
b'\xe7\xae\x97\xe4\xb8\x8d\xe4\xb8\x8a\xe5\xa4\xa7\xe7\xa5\x9e\xef\xbc\x8c\xe6\x88\x91\xe5\xb0\xb1\xe6\x98\xaf\xe5\x88\x92\xe6\xb0\xb4\xe7\x9a\x84'
>>> urllib.parse.quote(_)
'%E7%AE%97%E4%B8%8D%E4%B8%8A%E5%A4%A7%E7%A5%9E%EF%BC%8C%E6%88%91%E5%B0%B1%E6%98%AF%E5%88%92%E6%B0%B4%E7%9A%84'
>>> urllib.parse.unquote(_)
'算不上大神,我就是划水的'
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题