第九节: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都能用,但遇 ...
随机推荐
- 最简单的 TensorFlow 代码,TensorFlow Hello World 。
# -*- coding:utf-8 -*- from __future__ import print_function ''' HelloWorld example using TensorFlow ...
- PHP7内核(五):系统分析生命周期
上篇文章讲述了模块初始化阶段之前的准备工作,本篇我来详细介绍PHP生命周期的五个阶段. 一.模块初始化阶段 我们先来看一下该阶段的每个函数的作用. 1.1.sapi_initialize_reques ...
- java并发安全
本次内容主要线程的安全性.死锁相关知识点. 1.什么是线程安全性 1.1 线程安全定义 前面使用8个篇幅讲到了Java并发编程的知识,那么我们有没有想过什么是线程的安全性?在<Java并发编程 ...
- coding++:TimeUnit 使用
TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段 主要作用 时间颗粒度转换 延时 常用的颗粒度 TimeUnit.DAYS //天 TimeUnit. ...
- iOS 应用签名
一.密码学简介 1.1 base64 Base64 是一种通过查表的编码方法,不能用于加密,即使使用自定义的编码表也不行. Base64 适用于小段内容的编码,比如数字证书签名.Cookie 的内容等 ...
- iOS 引用计数
一.简介 OC 在创建对象时,不会直接返回该对象,而是返回一个指向对象的指针. OC 在内存管理上采用了引用计数,它是一个简单而有效管理对象生命周期的方式.在对象内部保存一个用来表示被引用次数的数字, ...
- Mac 中命令行启动、停止、重启Mysql
启动: ~$ sudo /usr/local/mysql/support-files/mysql.server start 停止: ~$ sudo /usr/local/mysql/support-f ...
- SpringCloud入门(九): Zuul 上传&回退&异常处理&跨域
Zuul的上传 1.构建一个上传类 import org.springframework.web.bind.annotation.PostMapping; import org.springframe ...
- Django-利用Form组件和ajax实现的注册
利用Form组件和ajax实现的注册 一.注册相关的知识点 1.Form组件 我们一般写Form的时候都是把它写在views视图里面,那么他和我们的视图函数也不影响,我们可以吧它单另拿出来,在应用下面 ...
- ajax使用POST提交报错400
并非BadRequest!! 在用ajax访问登录接口的时候出现了这个错误,查阅得到使用Ajax的Post需要添加 contentType: "application/x-www-form- ...