开发环境
Python3.9+PyCharm
第三方库
pip install PySimpleGUI
pip install Pyinstaller
pip install json
json处理逻辑:JSONmessage.py
import json
def get_formated(json_str):
try:
try:
date = json.loads(json_str) #接受双引号json
json_data = json.dumps(date, indent=4, ensure_ascii=False) #json格式化
color = "black" #字体颜色黑色
return json_data, color
except Exception as e:
date = eval(json_str) #接受单引号json
json_data = json.dumps(date, indent=4, ensure_ascii=False) #json格式化
color = "black" #字体颜色黑色
return json_data, color
except Exception as e:
json_data = "JSON输入值错误,请检查后重新输入,错误信息如下\n" #异常处理
json_data += str(e)
color = "red" #字体颜色红色
return json_data, color
设计UI布局并关联处理逻辑:JSON格式化工具.py
import PySimpleGUI
import JSONmessage
def formattedjeson():
# ui布局
layout = [
[PySimpleGUI.Text("输入值:", font=("宋体", 15))],
[PySimpleGUI.Multiline(key="Input", size=(100, 10))],
[PySimpleGUI.Button("执行格式化", expand_x=True)],
[PySimpleGUI.Text("输出值:", font=("宋体", 15))],
[PySimpleGUI.Multiline(key="Output", size=(100, 15))]
]
windows = PySimpleGUI.Window("JSON格式化工具", layout)
while True:
event, values = windows.read()
if event == PySimpleGUI.WIN_CLOSED:
windows.close()
break
if event == '执行格式化':
print('layout', layout)
test2 = layout[1][0].get() #获取要格式化json
print('test2', test2)
test2 = JSONmessage.get_formated(test2) #格式化json
print('test2', test2)
windows["Output"].update(
value=test2[0], # str更新文本(只更新文本可以智驾用字符串)
background_color=None, # 更新文本背景颜色
text_color=test2[1], # 更新文本颜色
visible=None # 更新元素的可见状态
)
formattedjeson()
Pyinstaller命令生成Windows小工具
命令行输入:Pyinstaller -F -w JSON格式化工具.py
双击后打开
格式化一个json试试
最后这exe文件可以放在任何一个win电脑运行
代码源文件和EXE样例