python讀取Xlsx文件,并存儲到json文件中

首先安裝python環境,安裝xlrd,可以去python官網下載。
安裝的過程可能遇到setup.py install running install error: can't create or remove files in install directory這個問題,解決辦法:sudo python setup.py install

首先看一下xlsx表格:


img.png

下面是這個python文件:

#!/usr/bin/env python 
#encoding=utf-8  

import xlrd
import os
import json


##############xlrd解析xlsx################
curPath = os.path.abspath('.')      #獲取當前路徑
print(os.path.join(curPath,"test.xlsx"))    
data = xlrd.open_workbook(os.path.join(curPath,"test.xlsx"))        #打開xlsx文件

table = data.sheets()[0];               #打開第一張表
# print table 
rows = table.nrows                  #獲取到行數
print rows

content = []

for i in range(rows):
    if i>0:
        # print table.row_values(i)         
        item_data = table.row_values(i); #獲取到每一行的內容
        item_content = []
        for x in item_data:
            # print x
            item_content.append(x)
        content.append(item_content)
print content


##############把讀取到的內容寫到json文件################
data={'a':1,'b':2,'c':3}
data_string = json.dumps(data);         #將python中的 字典 轉換為 字符串
# print data_string
print data['a']

def createJson(content):
    jsonData = {}
    for item_data in content:
        jsonData[item_data[0]] = {}
        jsonData[item_data[0]]['id'] = item_data[0]
        jsonData[item_data[0]]['name'] = item_data[1]
        jsonData[item_data[0]]['age'] = item_data[2]
        jsonData[item_data[0]]['tel'] = item_data[3]

    return jsonData

def store(jsonStr):         #寫入到json文件
    with open('test.json', 'w') as json_file:
        json.dump(jsonStr, json_file)

jsonData = createJson(content)

store(jsonData)
# print json.dumps(jsonData)

然后看一下解析出來的json:

{
  "1.0": {
    "age": 11.0,
    "tel": 12345.0,
    "id": 1.0,
    "name": "Alla"
  },
  "2.0": {
    "age": 21.0,
    "tel": 6789.0,
    "id": 2.0,
    "name": "ASA"
  },
  "3.0": {
    "age": 211.0,
    "tel": 123456790.0,
    "id": 3.0,
    "name": "ead"
  }
}

一個簡短的測試,以后用的時候還有很多需要改進

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容