脚本专栏 
首页 > 脚本专栏 > 浏览文章

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

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

核心代码:

#!/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开发中要注意的十个小贴士
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?