28

私は次の文字列を持っています、それをuなしのリストに変える必要があります'':

my_str = "[{u'name': u'squats', u'wrs': [[u'99', 8]], u'id': 2}]"

私はを使用して"を取り除くことができます

import ast
str_w_quotes = ast.literal_eval(my_str)

それから私はします:

import json
json.dumps(str_w_quotes)

取得します

[{\"id\": 2, \"name\": \"squats\", \"wrs\": [[\"55\", 9]]}]

バックスラッシュを取り除く方法はありますか?目標は次のとおりです。

[{"id": 2, "name": "squats", "wrs": [["55", 9]]}]
4

4 に答える 4

9

文字列を JSON としてダンプするのではなく、文字列を JSON としてロードします。

import json
json.loads(str_w_quotes)

文字列はすでに JSON 形式になっています。JSON として再度ダンプする必要はありません。

于 2018-04-05T02:25:06.743 に答える
6
>>> "[{\"id\": 2, \"name\": \"squats\", \"wrs\": [[\"55\", 9]]}]".replace('\\"',"\"")
'[{"id": 2, "name": "squats", "wrs": [["55", 9]]}]'

元の文字列でこれを行うことができることに注意してください

>>> "[{u'name': u'squats', u'wrs': [[u'99', 8]], u'id': 2}]".replace("u\'","\'")
"[{'name': 'squats', 'wrs': [['99', 8]], 'id': 2}]"
于 2013-03-07T13:32:17.740 に答える