将excel文件(.xlsx)转换为json

svgewumm  于 2023-01-22  发布在  其他
关注(0)|答案(2)|浏览(213)

我有一个xlsx文件
| 国名|国家代码|
| - ------|- ------|
| 输入|印度|
| SL语言|斯里兰卡|
我想把它转换成json格式

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

我试着加载excel文件使用Pandas和转换成json,但我得到

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

6rqinv9w1#

您可以使用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”:字典类似于{“索引”-〉[索引],“列”-〉[列],〉-“数据”-〉[值]}
  • “记录”:类似于[{列-〉值},...,{列-〉值}]的列表
  • “index”:类似于{索引-〉{列-〉值}}的字典
  • “columns”:dict类似于{列-〉{索引-〉值}}
  • “values”:仅值数组
  • “table”:类似于{“架构”:{架构},“数据”:{data}}描述数据,其中数据组件如orient='records'
7uhlpewt

7uhlpewt2#

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

相关问题