Json语法的总结-阿里云开发者社区

开发者社区> 软件测试帅哥> 正文

Json语法的总结

简介: Json语法的总结
+关注继续查看

图片的复制 注意文件要使用二进制

    涉及到文字处理 一般用 字符操作
    涉及到非文字处理,图片视频 :二进制操作
    分析:
        1.读取要复制的图片文件 rb
        2.写入一个新的图片文件  wb

    文件不是必须放到代码的目录下,写道其他地方也可以.路径一定要写清楚.

"""
imgFile = open("微信图片_20200309223043.jpg",mode="rb")
rImgFile = open("育华致远Logo.jpg",mode="wb")

rImgFile.write(imgFile.read())

imgFile.close()
rImgFile.close()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
python中有一个文件操作模块 os

    1.修改文件名称
    2.删除文件
    3.创建文件夹
    4.获取当前目录
    5.当前目录下的所有文件以及文件夹
    6.删除文件夹

"""
import os

修改文件名称 第一个参数 修改的文件名称 第二个是新名称

try:

os.rename("test.txt","修改之后的文件名.txt")

except Exception as e:

print(e)

删除文件 remove

os.remove("修改之后的文件名.txt")

创建文件夹 mkdir

os.mkdir("os")

获取当前目录 getcwd D:\育华志远工作资料\C2002A授课资料\Day21_Python文件操作及异常处理-上午\02_代码

path = os.getcwd();
print(path)

当前目录下的所有文件以及文件夹 listdir

dirlist = os.listdir()
print(dirlist)

获取绝对路径下的所有文件信息 listdir函数中指定一个文件夹路径

dirList2 = os.listdir("D:\育华志远工作资料\C2002A授课资料\代码")
print(dirList2)

删除指定文件夹

os.rmdir("os")

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
JSON的数据结构组成:本质上就是按照规定格式组成的字符串

    列表: 中括号 中多个字典类型元素用逗号隔开  JSON数组
    [{"name":"IPhone","price":5800},{"name":"HuaWei","price":5300},{"name":"XiaoMi","price":3500}]
    字典: 大括号中包含多组key-value{}   JSON对象
        key:字符串类型
        value:字符串 数值  bool 列表/字典/
        {"name":"IPhone","price":5800}


    JSON:方便数据在不同的系统或者编程中解析

    python2 和 python3 差异非常大.

python3中的json模块
    json.dumps(): 对数据进行编码。-----------字典或列表转换为字符串
    json.loads(): 对数据进行解码----------字符串转字典或者列表。

"""
import json

dist = {"name":"IPhone","price":5800}

将字典对象转换为json字符串

jsonStr = json.dumps(dist)
print(type(jsonStr))

将列表对象转换为json字符串

list = [{"name":"IPhone","price":5800},{"name":"HuaWei","price":5300},{"name":"XiaoMi","price":3500}]
jsonStr2 = json.dumps(list)
print(type(jsonStr2))

distStr = '{"name":"IPhone","price":5800}'

将json字符串转换为字典对象

distResult = json.loads(distStr)
print(type(distResult))

listStr ='[{"name":"IPhone","price":5800},{"name":"HuaWei","price":5300}]'
listResult = json.loads(listStr)
print(type(listResult))

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
通过控制台输入一个列表的json字符串,将其转换为一个列表并将元素输出到指定文件下.

1.控制台输入一个列表字符串json
2.转换为列表
3.创建文件对象
4.遍历列表
5.把每个对象写入到文件中

"""
import json

if name == '__main__':

jsonStr = input("请您输入一个Json字符串列表\n")
if jsonStr !="":
   resultList = json.loads(jsonStr)
   file = open("手机.json",mode="w",encoding="UTF-8")
   for m in resultList:
        content = m["name"]+"价格为:"+m["price"]+"\n"
        file.write(content)
   file.close()



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
使用代码在桌面创建一个文件夹,然后键盘录入学生信息,以字典的形式保存到文件中。

1.在桌面创建一个目录 :此时用绝对路径实现比较好
2.需要键盘录入学生信息
3.以字典的形式输出到一个文件中 {"key":value}

"""
import os
path = "C:\Users\soulstare\Desktop\homework"

C:\Users\soulstare\Desktop

os.mkdir(path)

name = input("请输入学生的姓名")
age = input("请输入学生的年龄")

dict = {"name":name,"age":age} # 不加双引号表示的是字符串 加双引号是变量

file = open(path+"\student.txt",mode="w",encoding="UTF-8")
file.write("学生的姓名为:"+dict["name"]+"学生的年龄是:"+dict["age"])
file.close()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
将以下json字符串转换为python对象: 菜谱
要求:将字符串中做红烧肉的步骤提取出来
分析:

第一步:读取文件内容  json字符串
第二步:通过json模块转换为python对象


如果要看json的数据最好使用json工具: jsonview
"""
import json

file = open("菜谱.json",mode="r",encoding="UTF-8")
jsonStr = file.read()

pyObj = json.loads(jsonStr)

拿到result中的数据

result = pyObj.get("result")
print(result)

拿到data列表

dataList = result.get("data")
print(dataList)

循环遍历list

for r in dataList:

print(r.get("title"))
steps = r.get("steps")
for s in steps:
    print(s.get("step"))

file.close()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
"error_code": 0,

"reason": "Success",
"result": {
    "data": [
        {
            "albums": [
                "http://img.juhe.cn/cookbook/t/0/45_854851.jpg"
            ],
            "burden": "玫瑰腐乳,适量;盐,适量;八角,适量;草果,适量;香叶,适量;料酒,适量;米醋,适量;生姜,适量",
            "id": "45",
            "imtro": "做红烧肉的豆亲们很多,大家对红烧肉的热爱更不用我说,从名字上就能反映出来。一些高手们对红烧肉的认识更是令我佩服,单单就红烧肉的做法、菜谱都看得我是眼花缭乱,口水横流。单纯的红烧肉我平时还真没做过,再不抓紧时间做一回解解馋,不是对不起别人,而是太对不起我自己了! 这道菜的菜名用了秘制二字来形容,当然是自己根据自己多年吃货的经验想象出来的,我不介意把自己的做法与大家共享,只为大家能同我一样,吃到不同口味的红烧肉。不同的人们根据自己的习惯都有不同的做法,味道也不尽相同。我的秘制的关键就是必须用玫瑰腐乳、冰糖和米醋这三种食材,腐乳和冰糖可以使烧出来的肉色泽红亮,米醋能解腻,令肥肉肥而不腻,此法烧制的红烧肉软糯中略带咸甜,的确回味无穷!",
            "ingredients": "五花肉,500g",
            "steps": [
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/45_0824e37faf00b71e.jpg",
                    "step": "1.将五花肉煮至断生状态"
                },
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/45_b6d7329b703f6e85.jpg",
                    "step": "2.切成大小一致的块"
                },
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/45_6ee9e8dab0516333.jpg",
                    "step": "3.放在锅内煎"
                }
            ],
            "tags": "家常菜;热菜;烧;煎;炖;红烧;炒锅",
            "title": "秘制红烧肉"
        },
        {
            "albums": [
                "http://img.juhe.cn/cookbook/t/1/52_759155.jpg"
            ],
            "burden": "葱,适量;姜,适量;蒜,适量;八角,2粒;桂皮,1块;干辣椒,1个;酱油,适量;冰糖,适量;盐,适量;料酒,适量",
            "id": "52",
            "imtro": "红烧肉是热菜菜谱之一,以五花肉为制作主料,红烧肉的做法各地也会稍有不同。南方习惯用酱油(老抽)调色,而北方则偏爱炒糖色儿,红烧肉也是我拿手菜之一,不管是逢年过节还是亲朋聚会都不会少了诱人的红烧肉。红烧肉的特点;浓油赤酱,肥而不腻,入口酥软即化。",
            "ingredients": "五花肉,1000g",
            "steps": [
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/52_b02a6aa276e3352f.jpg",
                    "step": "1.五花肉洗净切成大块。"
                },
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/52_0cfde36e8061dd9c.jpg",
                    "step": "2.冷水把肉下锅烧开,把肉焯水。"
                },
                {
                    "img": "http://img.juhe.cn/cookbook/s/1/52_4bbe9a903c8b144e.jpg",
                    "step": "3.准备好 八角 桂皮 葱姜蒜 辣椒。"
                }
            ],
            "tags": "家常菜;咸;半小时-1小时;孕妇;青少年;老人;白领;晚餐;红烧;营养;增强抵抗力;全菜系;1-2人;待客菜;锅子",
            "title": "经典红烧肉"
        }
    ],
    "pn": "1",
    "rn": "3",
    "totalNum": "306"
},
"resultcode": "200"

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10074 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10882 0
大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft Naive Bayes 算法)
原文:(原创)大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft Naive Bayes 算法) 本篇文章主要是继续上两篇Microsoft决策树分析算法和Microsoft聚类分析算法后,采用另外更为简单一种分析算法对目标顾客群体的挖掘,同样的利用微软案例数据进行简要总结。
1175 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13882 0
WPFのImage控件souce引入的方法总结
原文:WPFのImage控件souce引入的方法总结   1、后台代码相对路径添加(若为绝对路径,换UriKind的属性即可) BitmapImage testBitmapImage = new BitmapImage(new Uri(@"\bin\Sources\ON_btn_AutoDetect.
888 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
7365 0
+关注
软件测试帅哥
🥳五年经验的软件测试工程师 ✨曾任某金融上市公司测试负责人,现任某绿色能源科技公司测试负责人。 👉分享软件测试功能、接口、自动化、性能、测开、面试职场干货,测试新人职业规划及咨询。 👉零基础转行软件测试实训 🤝关注我,每天了解软件测试行业知识 👉领取学习资料:VX:17853468896
72
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载