# エンコーディング=utf-8
json をインポート
# js エスケープ文字列エンコーディング
c = '%u8FD9%u662F%u4E00%u4E32%u6587%u5B57'
#Json オブジェクトを復元
jsonObj = '"'+"".join([(i and "\"+i) for i in c.split('%')])+'"'
print json.loads(jsonObj)
特に、「%」を「」記号に置き換えた後、二重引用符を使用して文字列を囲むことを忘れないでください。こうすることで、文字列が json オブジェクトと見なされ、json.loads が出力されるようになります
その後、ついにウェブサイトでもっと簡単な方法を見つけました。コードは次のとおりです:
コードをコピー コードは次のとおりです:
# エンコーディング=utf-8
c = '%u8FD9%u662F%u4E00%u4E32%u6587%u5B57'
print "".join([(len(i)>0 and unichr(int(i,16)) or "") for i in c.split('%u')])
実際、考え方は似ています。「%u」記号が置き換えられ、残りの各文字は 4 ビットの固定長文字エンコーディングになります。最後に、unichr は中国語の文字にデコードされます。