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

yipeiwu_com6年前Python基础

核心代码:

#!/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)

相关文章

深入理解python中的浅拷贝和深拷贝

深入理解python中的浅拷贝和深拷贝

在讲什么是深浅拷贝之前,我们先来看这样一个现象: a = ['scolia', 123, [], ] b = a[:] b[2].append(666) print a print...

Python yield使用方法示例

1. iterator叠代器最简单例子应该是数组下标了,且看下面的c++代码: 复制代码 代码如下:int array[10];for ( int i = 0; i < 10; i...

Python字符串格式化

在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出。Python中内置有对字符串进行格式化的操作%。 模板 格式化字符串时,Python使用一个字符...

python 图片验证码代码

下面是一个实战项目的结果。 复制代码 代码如下:#coding: utf-8 import Image,ImageDraw,ImageFont,os,string,random,Imag...

django admin组件使用方法详解

关于admin: (1) admin的概述: admin是一个django子代的组件,当创建一个项目会后,就会在settings文件的 INSTALLED_APPS 中自动注册,另外在u...