图片的复制 注意文件要使用二进制
涉及到文字处理 一般用 字符操作
涉及到非文字处理,图片视频 :二进制操作
分析:
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"