我有這個 collections.Countercounter_obj
Counter({('A', 'B'): 170,
('C', 'D'): 650})嘗試將元組格式的鍵轉(zhuǎn)換為字符串而不是使用 json.dumps 函數(shù)轉(zhuǎn)換為 jsondict = {str(k):v for k,v in counter_obj.items()}
json1 = json.dumps(dict)當(dāng)我打印 json 時,我得到了這個\。如何刪除它們并獲得整潔的 json 格式的反斜杠在哪里?'{"(\'A\', \'B\')": 170, "(\'C\', \'D\')": 650}'
3 回答

Cats萌萌
TA貢獻1805條經(jīng)驗 獲得超9個贊
他們不在那里。它們被顯示是因為您得到的是 json 字符串的表示而不是它的字符串版本。
演示:
>>> json1
'{"(\'A\', \'B\')": 170, "(\'C\', \'D\')": 650}'
>>> print(repr(json1))
'{"(\'A\', \'B\')": 170, "(\'C\', \'D\')": 650}'
>>> print(json1)
{"('A', 'B')": 170, "('C', 'D')": 650}

吃雞游戲
TA貢獻1829條經(jīng)驗 獲得超7個贊
看起來是因為元組的每個元素都是一個字符串,而您正在將整個元組轉(zhuǎn)換為一個字符串
我自己對 json.dumps 函數(shù)不太熟悉,但是在將它傳遞給 dict 時,你能不能把密鑰作為元組保留?
添加回答
舉報
0/150
提交
取消