第九节:os、sys、json、pickle、shelve模块
OS模块:
os.getcwd()获取当前路径
os.chdir()改变目录
os.curdir返回当前目录
os.pardir()父目录
os.makedirs('a/b/c')创建多层目录
os.removedirs()删除多层目录中的空目录
os.mkdir()创建目录
os.listdir()列出文件夹下的所有文件
os.remove()删除文件
os.rename()重命名文件
os.stat()查看文件的所有状态信息
os.sep返回操作系统的路径分隔符
os.linesep返回操作系统的终止符
os.pathsep返回分割文件路径的字符
os.name返回查看平台
os.system()使用系统命令 #使用shell命令获取相关数据,常用
os.environ()查看环境变量
os.path.abspath(path)查看绝对路径
os.path.split(path)将path分割成目录和文件名返回元组
os.path.dirname(path)获取路径的
os.path.basename(path)获取文件名
os.path.exists(path)判断路径是否存在
os.path.isabs(path)判断是否是绝对路径
os.path.isfile(path)判断是否是文件
os.path.isdir()判断是否是目录
os.path.join(path1,path2)目录拼接
os.path.getatime(path)获取文件的访问时间
os.path.getmtime(path)获取文件的修改时间
SYS模块:
sys.path返回模块的搜索路径
sys.exit()退出程序
sys.version获取解释器的版本
sys.platform返回操作系统的平台名称
sys.argv获取执行文件的文件名和参数
sys.stdout.wirte('&')打印内容(做进度条使用)
sys.stdout.flush()刷新内存内容到屏幕
JSON模块:
json.dumps(数据)将数据转换成json字符串,数据中的字符串的引号都转换成了双引号(序列化)
json.dump(dic,f)简化版的将json格式的数据写入文件(只能对于文件操作)
dic = {'name': 'sss', 'age': 22, 'sex': 'male'}
data=json.dumps(dic)#将数据类型转换成字符串,序列化
with open('config.json','w') as f:
f.write(data)#等同于json.dump(data,f)写到文件中 f.write(data)写入文件的内容:{"name": "sss", "age": 22, "sex": "male"} json.dump(data,f)写入文件的内容:"{\"name\": \"sss\", \"age\": 22, \"sex\": \"male\"}"
json.loads()将字符串的转换成数据类型 (反序列化)
json.load(load,f)简化版的将反序列化的数据读出
with open('config.json','r') as f:
data=json.loads(f.read())#等同于json.load(f)反序列化读出文件内容
print(data)
{'name': 'sss', 'age': 22, 'sex': 'male'}
pickle模块:
功能和json一摸一样
但是处理成字节,所以读出和写入的时候需要使用b模式并带上编解码类型 wb或者rb
支持的数据类型更多(函数、类)但是没啥卵用
shelve模块:
f = shelve.open(r.'aaa')#定义一个文件
f=['stu1_info'={'name':'sss'}]存入字典
print(f.get('stu1_info')['name']) 取字典的值
XML模块:(用到的时候再看)
tree=xml.parse('xmltest.xml')
root= tree.getroot()
print(root.tag) 打印对象的标签
root.attrib 获取对象的属性
root.text 获取对象的文本内容
第九节:os、sys、json、pickle、shelve模块的更多相关文章
- 学到了林海峰,武沛齐讲的Day22-完 os sys json pickle shelve XML re
__ file__ ===== 文件路径 os.path.dirname( 路径 )=======到上一层目录 os sys
- python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则
python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess ...
- python序列化: json & pickle & shelve 模块
一.json & pickle & shelve 模块 json,用于字符串 和 python数据类型间进行转换pickle,用于python特有的类型 和 python的数据类型间进 ...
- day6_python序列化之 json & pickle & shelve 模块
一.json & pickle & shelve 模块 json,用于字符串 和 python数据类型间进行转换pickle,用于python特有的类型 和 python的数据类型间进 ...
- 各类模块的粗略总结(time,re,os,sys,序列化,pickle,shelve.#!json )
***collections 扩展数据类型*** ***re 正则相关操作 正则 匹配字符串*** ***time 时间相关 三种格式:时间戳,格式化时间(字符串),时间元组(结构化时间).***`` ...
- Python全栈之路----常用模块----序列化(json&pickle&shelve)模块详解
把内存数据转成字符,叫序列化:把字符转成内存数据类型,叫反序列化. Json模块 Json模块提供了四个功能:序列化:dumps.dump:反序列化:loads.load. import json d ...
- json,pickle,shelve模块,xml处理模块
常用模块学习—序列化模块详解 什么叫序列化? 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化? 你打游戏过程 ...
- json&pickle&shelve模块
之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了 ...
- json & pickle & shelve 模块
JSON表示的对象就是标准的JavaScript语言的对象,JSON和Python内置的数据类型对应如下: # json序列化 import json,time user={'name':'egon' ...
- Python json & pickle & shelve模块
json & pickle 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇 ...
随机推荐
- JS事件流模型
JS事件流模型 事件捕获Event Capturing是一种从上而下的传播方式,以click事件为例,其会从最外层根节向内传播到达点击的节点,为从最外层节点逐渐向内传播直到目标节点的方式. 事件冒泡E ...
- java简单序列化和反序列化
一.序列流 1.什么是序列流 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, 以此类推. 2.使用方式 整合两个: Seque ...
- Cookie SameSite属性介绍及其在ASP.NET项目中的应用
一.Cookie SameSite属性介绍 就像大家已经知道的,一旦设置Cookie之后,在Cookie失效之前浏览器会一直将这个Cookie在后续所有的请求中都传回到Server端.我们的系统会利用 ...
- jviisualvm监控远程主机java程序实战与问题排查
1.远程主机运行jstatd 首先新建文件 jstatd.all.policy ,内容如下 grant codebase "file:${java.home}/../lib/tools.ja ...
- 微信内置浏览器对于html5的支持
微信内置浏览器对于html5的支持 来源: 作者: 热度:102 日期:14-06-10, 09:10 AM 我在做针对微信的HTML5应用, 目前遇到的几个问题是 一. 安卓版微信直接调用系统浏览器 ...
- 医学图像 | 使用深度学习实现乳腺癌分类(附python演练)
乳腺癌是全球第二常见的女性癌症.2012年,它占所有新癌症病例的12%,占所有女性癌症病例的25%. 当乳腺细胞生长失控时,乳腺癌就开始了.这些细胞通常形成一个肿瘤,通常可以在x光片上直接看到或感觉到 ...
- 使用SlimYOLOv3框架实现实时目标检测
介绍 人类可以在几毫秒内在我们的视线中挑选出物体.事实上,你现在就环顾四周,你将观察到周围环境并快速检测到存在的物体,并且把目光回到我们这篇文章来.大概需要多长时间? 这就是实时目标检测.如果我们能让 ...
- HDU - 1503 最长公共子序列记录路径
题意:先给两个水果的名字然后得出一个最短的序列包含这两个词. 思路:我一开始的思路是先求出最长公共子序列,然后做一些处理将其他的部分输出来:两种水果的字符串和最长公共子序列的字符串这三个字符串做对比, ...
- vscode下搭建typescript时提示"无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称"错误的解决方法
根据网上的教程,安装了node.js后,再安装了typescript,,,这时候编译生成或者在vscode的终端里调用npm或者tsc --version时,总是提示 npm : 无法将"n ...
- python—os模块
os模块(操作目录) 1 import os 2 os.rename('旧','新') #修改文件名 3 os.remove('') #删除文件 4 print(os.listdir('.')) # ...