python 读取excel 生成json 读取json

# _*_ coding: utf-8

import xlrd,sys
import pickle
import json

data=xlrd.open_workbook("d:/test/6.xlsx")

##读取工作表,方法可以按顺序索引找,也可以使用sheet_by_name(u"Sheet1")
table = data.sheet_by_index(0)

###读取内容摘要表并存入nrarr
nrarr={}
table1 = data.sheet_by_index(1)
for ro in range(2,table1.nrows):
    jj= table1.row(ro)[0].value
    #print ro
    if jj !="":
        nr=table1.row(ro)[1].value
        nrarr[jj]=nr
        #print nrarr[jj].encode(‘gbk‘,‘ignore‘)
‘‘‘
#for k,v in nrarr.items():
#    print k, v.encode(‘gbk‘, ‘ignore‘)
    #print k.encode(‘gbk‘),v.encode(‘gbk‘)

##获取工作表数量
#tables = data.nsheets

##获取整行,整列的值 (返回数组)
#table.row_values(n)
#table.col_values(n)

##单元格操作
#cell_A1 = table.cell(0,0).value
#cell_C4 = table.cell(2,3).value

##行列索引
#table.row(0)[1].value
#table.col(1)[0].value
‘‘‘

##获取总行数
nrows = table.nrows

##获取列数
ncols = table.ncols
list=[]

for rn in range(3, nrows):
    allarr={}
    jn = table.row(rn)[0].value
    allarr[‘xxx‘] = jn
    allarr["xx"] = table.row(rn)[10].value
    allarr[‘xx‘] =str(table.row(rn)[16].value)
    #allarr[‘xx‘] = table.row(rn)[5].value
    allarr[‘xx‘] = ""
    allarr[‘xx‘] = table.row(rn)[7].value
    allarr[‘xx‘] = table.row(rn)[8].value
    allarr[‘xx‘] = u‘中文‘
    allarr[‘xx‘] = table.row(rn)[4].value
    allarr[‘xx‘]=nrarr[jn]
    list.append(allarr)
##生成json并写入文件
js = json.dumps(list)
output = open("d:/test/oo.json",‘w‘)
output.write(js)
output.close()

###读json
jf=json.load(open("d:/test/oo.json"))
for ls in jf:
    for k,v in ls.items():
        print k,v.encode(‘gbk‘,‘ignore‘)
        #print k,v

时间: 2024-10-09 11:11:31

python 读取excel 生成json 读取json的相关文章

使用POI 读取 Excel 文件,读取手机号码 变成 1.3471022771E10

使用POI 读取 Excel 文件,读取手机号码 变成 1.3471022771E10 [问题点数:40分,结帖人xieyongqiu] 不显示删除回复             显示所有回复             显示星级回复             显示得分回复             只显示楼主           收藏 关注 xieyongqiu maobingxixi 本版等级: 结帖率:71.43% 楼主发表于: 2010-09-13 17:33:03 使用POI 读取 Excel 

C# ASP.NET 读取EXCEL 单元格 读取 空值 不显示

跟大家分享一下,[摘自]:http://blog.csdn.net/li185416672/article/details/8213729 读取excel时,某些单元格为空值 原来如此: 当我们用olebb读取excel的时候,如果没有配置imex=1的属性,微软的处理机制是将列转换为同一类型来读取的.例如你在第一行写的数字格式,而第二行写的字符格式,就会出现某些列有值却读不出来.其实问题也很简单,如果知道问题所在的话.属性设置为"imex=1"即可 附以下参考: string xls

c# 读取excel 出现数字读取成“”空

读取excel用到的方法: /// <summary> /// Excel导入数据源 /// </summary> /// <param name="sheet">sheet</param> /// <param name="filename">文件路径</param> /// <returns></returns> public static DataTable Exc

NPOI 读取excel到DataTable 读取隐藏列 读取公式列

处理思路: 1.打开excel 用NPOI进行读取: 2.读取第一个Sheet: 读取过程中: a.先设置相应列 不隐藏 b.读取Cell时 先判断是否的包含公式 相应代码如下: public static DataTable ReadDataFromExcelByNPOI() { DataTable dt = new DataTable(); var filePathAndName = Path.Combine(Server.MapPath("~/Content/Excel"), &

Python将Excel生成SHP

#!/usr/bin/env python # -*- coding: utf-8 -*- import gdal import xlrd import shapefile # open the excel file excel_file = xlrd.open_workbook("../geodata/highest-mountains-europe.xlsx") # get the first sheet sh = excel_file.sheet_by_index(0) w =

C#读取excel文件,生成json

这段时间在做一个数据管理系统,需要读取excel表格,组装json,最终存入mongodb,这里记录一下解决思路. 需要做的准备工作: 1.安装AccessDatabaseEngine 下载地址:https://products.office.com/zh-cn/compare-all-microsoft-office-products?tab=1 有32bit和64bit两个版本,具体要安装哪个要看你的Office程序是32bit的还是64bit的.通常来讲,一般是选择与office程序相对应

C# 读取EXCEL

private Stopwatch wath = new Stopwatch(); /// <summary> /// 使用COM读取Excel /// </summary> /// <param name="excelFilePath">路径</param> /// <returns>DataTabel</returns> public System.Data.DataTable GetExcelData(str

读取Excel文件的两种方法

第一种方法:传统方法,采用OleDB读取EXCEL文件, 优点:写法简单,缺点:服务器必须安有此组件才能用,不推荐使用 private DataSet GetConnect_DataSet2(string fileName) { DataSet myDataSet = new DataSet(); //创建一个数据链接 string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + fileName +

【转】ExcelHelper类,用npoi读取Excel文档

//------------------------------------------------------------------------------------- // All Rights Reserved , Copyright (C) 2013 , DZD , Ltd . //------------------------------------------------------------------------------------- using System; us