1.数据准备

数据下载

2.python代码

import  datetime
import os
import mssqlhelper ms = mssqlhelper.MSSQL(host="192.168.0.108", user="sa", pwd="sa", db="ComPrject")
def getAreas(cityid):
arealist=ms.ExecQuery("select *From dbo.areas where cityid='%s' " % cityid)
return arealist def getCity(provinces):
citylist=ms.ExecQuery("select *From dbo.cities where provinceid='%s'" % provinces)
return citylist def getProvinces():
provlist=ms.ExecQuery("select *From dbo.provinces")
return provlist def createFileJson():
date=datetime.datetime.now().strftime('%Y-%m-%d')
path=date+'-provinces.json'
return path def writeJson(path):
provlist=getProvinces() with open(path,"w+",encoding="utf-8") as f:
f.write("[")
lp = 0
for p in provlist:
if lp>0:
f.write(",\n")
else:
f.write("\n")
f.write("{\n")
f.write('"Code":"%s"\n'% p[1])
f.write(',"Name":"%s"\n'% p[2])
f.write(',Nodes:[\n')
citylist=getCity(p[1])
lc = 0
for c in citylist:
if lc>0:
f.write("\t,\n")
else:
f.write("\n")
f.write("\t{\n")
f.write('\t"Code":"%s"\n'% c[1])
f.write('\t,"Name":"%s"\n'% c[2])
f.write('\t,Nodes:[\n')
arealist = getAreas(c[1])
la = 0
for a in arealist:
if la>0:
f.write("\t\t,\n")
else:
f.write("\n")
f.write("\t\t{\n")
f.write('\t\t"Code":"%s"\n'% a[1])
f.write('\t\t,"Name":"%s"\n'% a[2])
f.write("\t\t}\n")
la += 1
f.write("\t]\n")
f.write("\t}\n")
lc += 1
f.write("]\n")
f.write("}\n")
lp += 1
f.write("]\n") if __name__ == '__main__':
path=createFileJson()
writeJson(path)

3.生成预览

Python 生成json文件的更多相关文章

  1. Python生成pyc文件

    Python生成pyc文件 pyc文件是py文件编译后生成的字节码文件(byte code).pyc文件经过python解释器最终会生成机器码运行.所以pyc文件是可以跨平台部署的,类似Java的.c ...

  2. python 生成json格式文件,并存储到手机上

    上代码 #!/usr/bin/env python # -*- encoding: utf-8 -*- import json import os import random "" ...

  3. python 读写 json文件

    json的优势: 1. 数据体积方面. JSON相对于XML来讲,数据的体积小,传递的速度更快些. 2. 传输速度方面. JSON的速度要远远快于XML 3. 数据格式 数据格式比较简单, 易于读写, ...

  4. python解析json文件之简介

    一.JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition ...

  5. python中json文件处理涉及的四个函数json.dumps()和json.loads()、json.dump()和json.load()的区分

    一.概念理解 1.json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串) (1)json.dumps()函数是将一个Python数据类型列表进行js ...

  6. windows平台 python生成 pyd文件

    Python的文件类型介绍: .py       python的源代码文件 .pyc     Python源代码import后,编译生成的字节码 .pyo     Python源代码编译优化生成的字节 ...

  7. VNPY加密教程(Python生成pyd文件)

    安装成功之后,再修改设置.让Cython可以找到vcarsall.bat.此处有两种方案.(我采用方案1,亲测可用.方案2未测试,看似可用.) 方案1:修改Python安装目录的文件设置 window ...

  8. python 读写json文件(dump, load),以及对json格式的数据处理(dumps, loads)

    JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. 1.json.dumps()和json.loads()是json ...

  9. Python生成pyd文件

    Python的脚本文件是开源的,量化策略的安全性没有保障.因此需要保护源码.那么要对Python代码进行混淆.加密保护. 混淆代码,我准备使用pyminifier.而加密处理,就比较麻烦. Pytho ...

随机推荐

  1. mysql 查询表的最大时间 的数据

    SELECT * from (SELECT MAX(a.update_date) as q ,a.monitoring_point_id from biz_monitoring_point_recor ...

  2. Linux下github的使用

    在linux下搭建git环境 1.创建Github账号,https://github.com 2.Linux创建SSH密钥: ssh-keygen ##一直默认就可以了 3.将公钥加入到Github账 ...

  3. Arrays(二),对封装的数组进行增删改查操作

    (一)添加元素 对任意位置添加元素 /** * 向数组中添加元素 * @param e 元素e * @param index 插入元素的在数组中的位置 * @return 添加结果 */ public ...

  4. 为什么我markdown里的数学公式全崩了???

    目录 try a try ac is ok Typecho博客 https://www.diyifanwen.com/fanwen/dangyuanxindetihui/2665516.htm htt ...

  5. LOAD CSV ERROR: The used command is not allowed with this MySQL version

    要执行的sql 把csvload进db LOAD DATA LOCAL INFILE '/path/datas/temp.csv' INTO TABLE test_table_name FIELDS ...

  6. CentOS 7 & php7.2安装 php-redis 扩展

    CentOS 7 & php7.2安装 php-redis 扩展 1.下载phpredis-developcd /tmpwget https://codeload.github.com/php ...

  7. (转)Git 提交的正确姿势:Commit message 编写指南

    Git 每次提交代码,都要写 Commit message(提交说明),否则就不允许提交. $ git commit -m "hello world" 上面代码的-m参数,就是用来 ...

  8. 在Linux终端命令行下播放音乐的命令

    现在的 Linux 桌面已经发展的很好了,在桌面下播放音乐操作起来也很简单.那么我们还记得在桌面不是那么好的时候我们是怎么播放音乐的么?哎,我是想不起来了,实在是太难了. 不过现在我们可以先安装一个小 ...

  9. VMware里克隆出来的CentOS Linux device eth0 does not seem to be present, delaying initialization

    解决办法:1.ifconfig eth1 确定新网卡的MAC地址.nmcli con 确定新网卡的UUIDvim /etc/udev/rules.d/70-persistent-net.rules把原 ...

  10. MySQL高级学习笔记(一):mysql简介、mysq linux版的安装(mysql 5.5)

    文章目录 MySQL简介 概述 mysql高手是怎样炼成的 mysq linux版的安装(mysql 5.5) 下载地址 拷贝&解压缩 检查工作 检查当前系统是否安装过mysql 检查/tmp ...