【问题标题】:Convert excel file (.xlsx) to json将 excel 文件 (.xlsx) 转换为 json
【发布时间】:2023-01-19 22:13:31
【问题描述】:

我有一个 xlsx 文件

Country name Country code
IN India
SL Sri Lanka

我想将其转换为格式为 json

json = {
       {"Name":"India",
        "Code":"IN"},
       {"Name":"Sri Lanka",
        "Code":"SL"}
       }

我尝试使用 pandas 加载 excel 文件并将它们转换为 json 但我越来越

json = {
       "India":"IN",
        "Sri Lanka":"SL"
       }


【问题讨论】:

    标签: python


    【解决方案1】:

    您可以使用 pandas 来完成此操作。首先,您可以使用 pandas.read_excel 将 xlsx 文件读入 DataFrame

    import pandas as pd
    df = pd.read_excel('your_sheet.xlsx')
    

    然后你可以使用pandas.DataFrame.to_json将该DataFrame写回json

    df.to_json('your_data.json', orient='records')
    

    或者如果你想要它作为一个 json 字符串而不是写入文件

    json_data = df.to_json(orient='records')
    

    请注意,要实现您描述的输出格式,您需要传递orient='records'

    JSON字符串的格式:

    • ‘split’ : dict like {‘index’ -> [index], ‘columns’ -> [columns], >- ‘data’ -> [values]}
    • ‘records’:像 [{column -> value}, …, {column -> value}] 这样的列表
    • ‘index’ : dict like {index -> {column -> value}}
    • ‘columns’ : dict like {column -> {index -> value}}
    • ‘values’:只是值数组
    • ‘table’: dict like {‘schema’: {schema}, ‘data’: {data}} 描述数据,其中数据组件如orient='records'

    【讨论】:

      【解决方案2】:

      尝试: df.to_json(orient="records")

      【讨论】:

        猜你喜欢
        • 2015-02-01
        • 2013-05-19
        • 1970-01-01
        • 2016-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-01
        相关资源
        最近更新 更多