#################################总结#####################

os常用

os.makedirs('baby/安哥拉/特斯拉/黄晓明')
os.mkdir("baby/安哥拉/特斯拉/lvb") # 上层文件夹必须存在
os.rmdir("baby/baobao/baby/黄晓明") # 指定文件夹删除
print(os.path.dirname(r"D:\python_workspace_s18\day23 内置模块02\userinfo"))
#获取当前的文件名 D:\python_workspace_s18\day23 内置模块02
print(os.path.basename(r"D:\python_workspace_s18\day23 内置模块02\userinfo"))
#userinfo
print(os.path.exists(r"D:\python_workspace_s18\day23 内置模块02") )
#查看当前目录是否存在 不存在为False
======重命名文件夹=====
os.rename(r'temp1\inner\inner2','temp1\inner\haiyan')
=====删除文件夹和删除文件=========
# 先删文件,
os.remove(r'temp1\inner\file')
# 再删文件夹
os.removedirs(r'temp1\inner\haiyan') #删除一个文件夹的时候,如果上一级的文件夹是空的,就一并删除了。以此类推
os.rmdir((r'temp1\inner') )#只删除一个文件夹

pickle(重点)
 可以将我们python中的任意数据类型转化成bytes并写入到文件中,同样也可以把文件中写好的bytes转换回我们python的数据,这个过程被称为反序列化 

1. dumps() 把对象序列化成字节
2. loads() 把字节反序列化成对象

3. dump() 把对象序列化写入文件
4. load() 把文件中的内容反序列化成对象

json(重点中的重点)
json将python中常见的字典, 列表转化成字符串,是目前后端数据交互使用频率最高的一种数据格式
python: True, False, None
json: true, false, null

1. dumps() 把对象序列化成json
2. loads() 把json反序列化成对象

3. dump() 把对象序列化写入文件
4. load() 把文件中的内容反序列化成对象

使用json模块完成:

1. 字典-> 字符串

import json

dic={'a'='hehe','b'='haha'}

s=json.dumps(dic,ensure_ascii=False)#json处理中文问题

print(s)#把对象序列化成json

2. 字符串 -> 字典

d=json.loads(

'{"baby": null, "hxm": false, "syy": "史杨杨"}'

)

print(d)#把json反序列化成对象

import sys
# print(sys.platform)
print(sys.path) # 找模块的. 必须要记住. 模块的搜索路径 import pickle
#
class Elephant:
def __init__(self, name, weight, height):
self.name = name
self.weight = weight
self.height = height
def tiaoxi(self):
print(f"{self.name}大象特别喜欢调戏人") e = Elephant("宝宝", "185T", "")
e.tiaoxi() # 序列化
bs = pickle.dumps(e) # 把对象进行序列化
print(bs) bs = b'\x80\x03c__main__\nElephant\nq\x00)\x81q\x01}q\x02(X\x04\x00\x00\x00nameq\x03X\x06\x00\x00\x00\xe5\xae\x9d\xe5\xae\x9dq\x04X\x06\x00\x00\x00weightq\x05X\x04\x00\x00\x00185Tq\x06X\x06\x00\x00\x00heightq\x07X\x03\x00\x00\x00175q\x08ub.'
# 发序列化
dx = pickle.loads(bs) # 发序列化. 得到的是大象
dx.tiaoxi() ###########################实例二####################
e1 = Elephant("宝宝", "185T", "")
e2 = Elephant("宝贝", "120T", "") lst = [e1, e2] pickle.dump(lst, open("大象", mode="wb")) 读
lst = pickle.load(open("大象", mode="rb"))
for dx in lst:
dx.tiaoxi()
######################json################
import json dic = {"baby":None, "hxm":False, "syy":"史杨杨"} s = json.dumps(dic, ensure_ascii=False) # json处理中文的问题
print(s+'json')#把对象序列化成json d = json.loads('{"baby": null, "hxm": false, "syy": "史杨杨"}')
print(d['baby'])#把json反序列化成对象 f = open("baby.json", mode="w", encoding="utf-8")#把对象序列化成json写入文件
json.dump({"baby":None, "hxm":False, "syy":"史杨杨"}, f, ensure_ascii=False)
##把json反序列化成对象 从文件读取
f = open("baby.json", mode="r", encoding="utf-8")
obj = json.load(f)
print(obj)

python 模块二(os,json,pickle)的更多相关文章

  1. 常用模块(random,os,json,pickle,shelve)

    常用模块(random,os,json,pickle,shelve) random import random print(random.random()) # 0-1之间的小数 print(rand ...

  2. python--内置模块(二) os sys pickle json

    1.os模块 常用方法: os.makedirs('dirname1/dirname2') 可生成多层递归目录 os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目 ...

  3. day16 常用模块 sys os json pickle

          知识点 os:和操作系统相关sys:和解释器相关 json:和操作JSON(一种数据交换格式)相关pickle:序列化 hashlib:加密算法Collections:集合类型       ...

  4. python模块概况,json/pickle,time/datetime,logging

    参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html http://www.cnblogs.com/alex3714/articles/51 ...

  5. 模块(二)os hashlib

    模块(二)os hashlib 1.序列化模块 1.1 json 将满足条件的数据结构转化成特殊的字符串,并且可以反序列化转回去 # 两对方法 # 1 dumps() loads() ## 多用于网络 ...

  6. Python - 模块(二)

    目录 Python - 模块(二) re re下面的方法 logging os Python - 模块(二) re re模块提供了正则表达式的相关操作 主要字符介绍: . 通配符,除了换行符之外的任意 ...

  7. python 模块之os.path模块

    # -*- coding: cp936 -*- #python 27 #xiaodeng #python 模块之os.path模块 #http://www.cnblogs.com/dkblog/arc ...

  8. Python学习第十二课——json&pickle&XML模块&OS模块

    json模块 import json dic={'name':'hanhan'} i=8 s='hello' l=[11,22] data=json.dumps(dic) #json.dumps() ...

  9. 常用模块 time sys os json pickle

    # import time # print(time.time()) #秒数 # print('开始下载') # time.sleep(2) # print('下载完成') # print(time. ...

随机推荐

  1. Git——入门操作加创建账号【三】

    创建账号 GitHub https://github.com/ 码云 https://gitee.com/ 无论是github还是码云,创建账号都是非常简单快捷的,大家可以自行选择创建下,不过建议最好 ...

  2. Codeforces1101F Trucks and Cities 【滑动窗口】【区间DP】

    题目分析: 2500的题目为什么我想了这么久... 考虑答案是什么.对于一辆从$s$到$t$的车,它有$k$次加油的机会.可以发现实际上是将$s$到$t$的路径以城市为端点最多划分为最大长度最小的$k ...

  3. Flask 构建微电影视频网站(一)

    Flask构建电影视频网站 Python MTV模型 Flask微内核 Flask扩展插件配置及使用方法 根据业务开发网站前后台功能 Flask结合MySQL数据库 你将可以独立开发网站 独立部署运维 ...

  4. [APIO 2009] Atm

    传送门:>Here< 题意:给出一个有向图(有环),每个点有点权.从点S出发,经过每个点Tot可以加上点权,点可以经过多次,然而点权不能重复加多次.先要求走到某个终点E时点权最大.先要求在 ...

  5. MS-DOS 系统汇编环境之DOSBOX+vim

    经过虚拟机的体验,我发现还是dosbox里汇编比较方便..... 一.下载安装 dosbox DOSBOX 准备好 masm.exe.link.exe.debug.exe,放在~/dos下(文件夹名字 ...

  6. A1133. Splitting A Linked List

    Given a singly linked list, you are supposed to rearrange its elements so that all the negative valu ...

  7. A1011. World Cup Betting

    With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excite ...

  8. Nlog 简单的快速攻略

    废话不多说直接进入正题. 1.在项目中加入Nlog的应用 安装后会出现两个文件 2.我们打开Nlog.config配置文件设置日志记录 <?xml version="1.0" ...

  9. django(七)之数据库表的单表-增删改查QuerySet,双下划线

    https://www.cnblogs.com/haiyan123/p/7738435.html https://www.cnblogs.com/yuanchenqi/articles/6083427 ...

  10. JavaScript(JS)之Javascript对象DOM(三)

    https://www.cnblogs.com/haiyan123/p/7598320.html 一.什么是HTML  DOM HTML  Document Object Model(文档对象模型) ...