一、json介绍
JSON(JavaScript Object Notation)
是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写,同时也方便了机器进行解析和生成。它是基于
JavaScript Programming Language
,
Standard ECMA-262 3rd Edition - December 1999
的一个子集。
JSON
采用完全独立于程序语言的文本格式,但是也使用了类
C
语言的习惯(包括
C
,
C++
,
C#
,
Java
,
JavaScript
,
Perl
,
Python
等),这些特性使
JSON
成为理想的数据交换语言。
JSON
基于两种结构:
-
“名称/值”对的集合(
A collection of name/value pairs
)。不同的编程语言中,它被理解为对象(
object
),纪录(
record
),结构(
struct
),字典(
dictionary
),哈希表(
hash table
),有键列表(
keyed list
),或者关联数组 (
associative array
)。
-
值的有序列表(
An ordered list of values
)。在大部分语言中,它被实现为数组(
array
),矢量(
vector
),列表(
list
),序列(
sequence
)。
这些都是常见的数据结构。目前,绝大部分编程语言都以某种形式支持它们。这使得在各种编程语言之间交换同样格式的数据成为可能。
JSON
具有以下这些形式:
对象(object)
是一个无序的“‘名称/值’对”集合。一个对象以
“{”
(左括号)开始,
“}”
(右括号)结束。每个“名称”后跟一个
“:”
(冒号);“‘名称/值’ 对”之间使用
“,”
(逗号)分隔。
数组(array)
是值(
value
)的有序集合。一个数组以
“[”
(左中括号)开始,
“]”
(右中括号)结束。值之间使用
“,”
(逗号)分隔。
值(value)
可以是双引号括起来的字符串(
string
)、数值(
number
)、
true
、
false
、
null
、对象(
object
)或者数组(
array
),这些结构可以嵌套。
字符串(string)
是由双引号包围的任意数量
Unicode
字符的集合,使用反斜线转义。一个字符(
character
)即一个单独的字符串(
character string
)。
JSON
的字符串(
string
)与
C
或者
Java
的字符串非常相似。
数值(number)
也与
C
或者
Java
的数值非常相似。只是
JSON
的数值没有使用八进制与十六进制格式。
二、用python解析json文件
1、先给出
json
的测试文件内容
"fontFamily"
:
"微软雅黑"
,
"fontSize"
:
12
,
"BaseSettings"
:
{
"font"
:
1
,
"size"
:
2
2、调用
python
内置的
json
库进行解析,测试代码如下:
import json
def readjson():
f = open("test.json", encoding="utf-8")
file = json.load(f)
family = file["fontFamily"]
size = file["fontSize"]
basesetting = file["BaseSettings"]["font"]
return (family, size, basesetting)
if __name__ == '__main__':
print(readjson())
最后解析成功,结果为:
python os.walk子目录 python获取子目录
本次复现的是:使用python实现获取文件夹的子目录,并保存到txt文件 设计要求:需要带qt界面显示,给出文件夹路径能够自动获取子目录,并保存到本地文件夹pyqt5安装:pyqt5与flask安装1.pyqt界面设计将代码保存为untitled.py# -*- coding: utf-8 -*-
# Form implementation generated from reading ui f