繁体   English   中英

将 CSV 转换为 JSON - Python 时,空单元格变为“”

[英]Empty cells become “” when converting CSV to JSON - Python

目前我正在使用下面的代码将 CSV 转换为 JSON。 问题是,返回为 CSV 中的空值放置空字符串。 我需要这些是 null 以便 api 调用工作。

对于 CSV 中的空白值,如何获取 null?

def csvToJson(tokenHeader):
    data = []
    with open('CSV/quiz-questions.csv') as questionFile:
        csv.field_size_limit(sys.maxsize)
        csvReader = csv.DictReader(questionFile, quoting=csv.QUOTE_MINIMAL)
        for row in csvReader:
            data.append(row)

    with open('JSON/questions.json', 'w+') as jsonFile:
        jsonFile.write(json.dumps(data, indent=4))

在附加到列表之前将所有空字符串转换为None

for row in csvReader:
    row = {key: (None if value == "" else value) for key, value in row.items()}
    data.append(row)

Python None被转换为 JSON null

顺便说一句,您可以使用json.dump(jsonFile, data, indent=4)而不是分别调用jsonFile.write()json.dumps()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM