漂亮的打印json在Python3.7中不起作用?

2024-05-13 17:39:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我的python文件中有以下代码:

data_new = '''{{"homeMobileCountryCode": {0}, "homeMobileNetworkCode": {1}, 
"cellTowers":[{{"cellId": {2}, 
"locationAreaCode": {3}, "mobileCountryCode": {4}, "mobileNetworkCode": 
{5}}}]}}'''

newdata = data_new.format(mcc, mnc, cid, lac, mcc, mnc)
data_json = json.dumps(newdata, indent=4)
print(data_json)

但不是给我这样的东西:

{ 
  "homeMobileCountryCode": 12, 
  "homeMobileNetworkCode": 12, 
  "cellTowers": [ 
  { 
   "cellId": 12, 
   "locationAreaCode": 12, 
   "mobileCountryCode": 12, 
   "mobileNetworkCode": 12
  } 
 ] 
} 

它给了我这个:

{\"homeMobileCountryCode\": 32, \"homeMobileNetworkCode\": 45, \"cellTowers\":[{\"cellId\": 324, \n    \"locationAreaCode\": 324, \"mobileCountryCode\": 32, \"mobileNetworkCode\": 45}]}

我试着在终端上做这个,它给我同样的输出。我应该从这里去哪里?你知道吗


Tags: 文件代码jsonnewdatamccmncnewdata
1条回答
网友
1楼 · 发布于 2024-05-13 17:39:31

别这样。如果要创建JSON字符串,请从包含变量的Python数据结构开始。除此之外,您不需要担心转义字符。你知道吗

data_new = {
    "homeMobileCountryCode": mcc,
    "homeMobileNetworkCode": mnc,
    "cellTowers": [
         {"cellId": cid, "locationAreaCode": lac, "mobileCountryCode": mcc, "mobileNetworkCode": mnc}
    ]
}
data_json = json.dumps(data_new, indent=4)

相关问题 更多 >