Python 将无值替换为空字符串

Python 将无值替换为空字符串,python,python-3.x,Python,Python 3.x,我有一个JSON文件,其中某些属性的值为None。我想将此值转换为字符串None。以下是一个例子: Convert {"id": 134768, "groupId": 9039, "vehicleId": None, "username": "ccrabtree"} to {"id": 134768, "groupId": 9039, "vehicleId": "None", "username": "ccrabtree"} 我该怎么做 只需在字典中循环即可: import json dict

我有一个JSON文件,其中某些属性的值为None。我想将此值转换为字符串None。以下是一个例子:

Convert
{"id": 134768, "groupId": 9039, "vehicleId": None, "username": "ccrabtree"}
to
{"id": 134768, "groupId": 9039, "vehicleId": "None", "username": "ccrabtree"}

我该怎么做

只需在字典中循环即可:

import json
dictionary = json.load(open( "FILENAME HERE", 'r'))
for k in dictionary:
    if dictionary[k] is None:
        dictionary[k] = "None"

还应注意,空字符串不是空字符串,而是空字符串。

您可以使用字典理解:

new_dict = {key: 'None' if value is None else value for (key, value) in old_dict.items()}

您可以使用下面的map函数为字典中的每个键调用方法say replace_none,并将none替换为none

def replace_none(key):
    if d.get(key) is None:
       d[key] = "None"
map(replace_none,d)
None本身不是一个值,应使用标识运算符is进行比较:如果dic[key]为None:。。。变化不大,但更干净。