python

超轻量级php框架startmvc

Python 提取dict转换为xml/json/table并输出的实现代码

更新时间:2020-04-23 05:30 作者:startmvc
核心代码:#!/usr/bin/python#-*-coding:gbk-*-#设置源文件输出格式importsysimportgetoptimportjsonimportcreate

核心代码:


#!/usr/bin/python
#-*- coding:gbk -*-
#设置源文件输出格式
import sys
import getopt
import json
import createDict
import myConToXML
import myConToTable
 
 
def getRsDataToDict():
 #获取控制台中输入的参数,并根据参数找到源文件获取源数据
 csDict={}
 try:
 #通过getopt获取参数
 opts,args=getopt.getopt(sys.argv[1:],"",["output=","file=","query="])
 csDict=createDict.procParam(opts,args)
 return csDict
 except getopt.GetoptError:
 print getopt.error
 sys.exit()
 
def collectionToJson(contentTxt):
 #参数1表示python对象;参数2表示按照字典排序;参数3表示根据格式缩进显示
 jsoninfo = json.dumps(contentTxt,sort_keys=True,indent=2)
 print "JSON输出:"
 print type(jsoninfo)
 print jsoninfo
 
if __name__=="__main__":
 #输入参数格式为>python test.py output=json file=c:\..\input.txt query=Permission[0]
 inputParm=getRsDataToDict()
 if inputParm["query"]!=None:
 csDict=createDict.getQueryRs(inputParm["contentTxt"],inputParm["query"])
 else:
 csDict=inputParm["contentTxt"]
 output=inputParm["output"]
 if output=="json":
 collectionToJson(csDict)
 elif output=="xml":
 path='C:\\Users\\Vincent\\Documents\\MyTest1.xml'
 encod='utf8'
 myConToXML.getDictToXml(csDict,path,encod)
 elif output=="table":
 myConToTable.ContentToTable(csDict)