【问题标题】:Map json file to CSV rows将 json 文件映射到 CSV 行
【发布时间】:2016-10-20 00:28:21
【问题描述】:

我正在尝试使用 python 进行一些类型转换。我在想我会使用标题名称字典来函数并将这些函数映射到每个 CSV 行。

  'page':'ProductPage'
  'OAM':'False'
  'storeNum':'029'
  'brand':'Opti-UPS'
  'productPrice':'114.99'
 'SKU':'349829'
 'productID':'405220'
 'mpn':'GS1100B'
 'ean':'766908091211'
  'category':'UPS Systems'
 'isMobile':'False'

'page':'ProductPage'
  'OAM':'False'
  'storeNum':'029'
  'brand':'Aven'
  'productPrice':'2.99'
 'SKU':'563197'
 'productID':'442744'
 'mpn':'17551LF'
 'ean':'766955340416'
  'category':'Soldering
 'isMobile':'False'

现在想将此列表写入 csv 中,如下所示 -

Output

提前致谢。

【问题讨论】:

  • 您的问题究竟是什么?

标签: python json mapping


【解决方案1】:

假设您的 JSON 输入如下所示:

[{  "page":"ProductPage",
  "OAM":"False",
  "storeNum":"029",
  "brand":"Opti-UPS",
  "productPrice":"114.99",
 "SKU":"349829",
 "productID":"405220",
 "mpn":"GS1100B",
 "ean":"766908091211",
  "category":"UPS Systems",
 "isMobile":"False"},

{"page":"ProductPage",
  "OAM":"False",
  "storeNum":"029",
  "brand":"Aven",
  "productPrice":"2.99",
 "SKU":"563197",
 "productID":"442744",
 "mpn":"17551LF",
 "ean":"766955340416",
 "category":"Soldering",
 "isMobile":"False"}]

那么这个程序可能会做你想做的事:

import json
import csv

with open('in.json') as data:
    data = json.load(data)

headers = set().union(*data)

with open('out.csv', 'w') as result:
    result = csv.DictWriter(result, sorted(headers))
    result.writeheader()
    result.writerows(data)

【讨论】:

    猜你喜欢
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多