常用模块 plus
1. os
os.makedirs 创建多级目录
os.mkdir 只能创建一层 如果是多层,上层文件夹必须存在
os.removedirs 删除目录集中所有空文件夹
os.rmdir 删除指定文件夹,必须是空文件夹
os.getcwd 获取当前程序运行的文件夹
os.chdir 更换工作目录
2.os.path 和路径相关的
os.path.split 把文件绝对路径分割 返回元组
os.path.dirname 直接拿到文件绝对路径分割的 文件路径
os.path.basename 直接拿到文件绝对路径分割的 文件名
os.path.exists 判断文件是否存在
os.makedirs("1/2/3") # 创建多级目录
os.mkdir("a/b/c") # 只能创建一层 上层文件夹必须存在
os.mkdir("1/2/3/4")
os.removedirs("1/2/3/4") # 删除目录级中所有空文件夹 os.rmdir("1/2/3/4") # remove rm 指定文件夹删除,必须是空的 os.system("dir") # 执行 cmd命令或shell命令(linux) 返回值是0
print(os.popen("dir").read()) # 执行cmd命令 有返回值 print(os.getcwd()) # 当前程序运行的文件夹 os.chdir("1") # 更换工作目录
print(os.getcwd()) os.path 和路径相关的内容 print(os.path.abspath("1")) # 把相对路径打印绝对路径 把文件绝对路径分割
print(os.path.split("F:\python_workspace_s18\day23 内置模块\\1"))
分割 的前面的文件路径
print(os.path.dirname("F:\python_workspace_s18\day23 内置模块\\1"))
分割的后面的文件名
print(os.path.basename("F:\python_workspace_s18\day23 内置模块\\1")) print(os.path.exists("1")) # 判断是否存在
二.sys 模块
sys.path 找模块的,重点模块的搜索路径 返回列表
import sys print(sys.platform) # 查看平台 假的 骗人的 没用 print(sys.path) # 找模块的 重点.模块的搜索路径 是个列表
三. pickle 模块
pickle 模块 可以把一个对象序列化(dump) 成字节 和反序列化(load) 更便于存放
pickle.dump(obj,f) 把一个对象obj序列化写文文件内 # dumps 在py文件中用 不能跨文件
pickle.laod(f) 从一个文件内,拿出对象 # loads 在py文件中用 不能跨文件
import pickle class Elephant: def __init__(self,name,weight):
self.name = name
self.weight = weight def chi(self):
print(f"{self.name}在吃") e1 = Elephant("小象","1086t")
bs = pickle.dumps(e1) # 把el序列化成字节
print(bs)
el = pickle.loads(bs) # 反序列化
el.chi()
elephant",mode="wb") as f:
pickle.dump(e1,f) # 把对象序列化并写入文件中
pickle.dump(e2,f) with open("elephant",mode="rb") as f:
while 1: # 拿多个 直到没有了
try:
obj = pickle.load(f)
obj.chi()
except Exception:
break lst = [e1,e2]
with open("elephant",mode="wb") as f:
pickle.dump(lst,f) with open("elephant",mode="rb") as f:
obj = pickle.load(f)
for i in obj:
i.chi()
json是一种轻量级数据的数据交换格式
json.dump(obj,f,ensure_ascii=False) 把obj对象转换成json格式写入f文件中 ensure_ascii= 是否以ascii码显示 # dumps 跟pickle的一样
json.load(f) 把f文件中的json格式的转化成 python类型 #loads 跟pickle的一样
import json dic = {"baby":None,"hxm":True,"yy":"杨"} obj = json.dumps(dic,ensure_ascii=False) #
print(obj) j = json.loads('{"baby": null, "hxm": true, "yy": "杨"}')
print(j) with open("jsonn",mode="w",encoding="utf-8") as f:
json.dump(dic,f,ensure_ascii=False)
with open("jsonn", mode="r", encoding="utf-8") as f:
obj = json.load(f)
print(obj)
常用模块 plus的更多相关文章
- atitit 商业项目常用模块技术知识点 v3 qc29
atitit 商业项目常用模块技术知识点 v3 qc29 条码二维码barcodebarcode 条码二维码qrcodeqrcode 条码二维码dm码生成与识别 条码二维码pdf147码 条码二维码z ...
- 《Ansible权威指南》笔记(3)——Ad-Hoc命令集,常用模块
五.Ad-Hoc命令集1.Ad-Hoc命令集通过/usr/bin/ansible命令实现:ansible <host-pattern> [options] -v,--verbose ...
- python学习笔记(5)--迭代器,生成器,装饰器,常用模块,序列化
生成器 在Python中,一边循环一边计算的机制,称为生成器:generator. 如: >>> g = (x * x for xin range(10)) >>> ...
- 进击的Python【第五章】:Python的高级应用(二)常用模块
Python的高级应用(二)常用模块学习 本章学习要点: Python模块的定义 time &datetime模块 random模块 os模块 sys模块 shutil模块 ConfigPar ...
- Python模块之常用模块,反射以及正则表达式
常用模块 1. OS模块 用于提供系统级别的操作,系统目录,文件,路径,环境变量等 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("di ...
- python学习笔记之常用模块(第五天)
参考老师的博客: 金角:http://www.cnblogs.com/alex3714/articles/5161349.html 银角:http://www.cnblogs.com/wupeiqi/ ...
- day--6_python常用模块
常用模块: time和datetime shutil模块 radom string shelve模块 xml处理 configparser处理 hashlib subprocess logging模块 ...
- Tengine 常用模块使用介绍
Tengine 和 Nginx Tengine简介 从2011年12月开始:Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能 和特性. ...
- Saltstack常用模块及API
Saltstack提供了非常丰富的功能模块,涉及操作系统的基础功能.常用工具支持等,更多模块信息可以查看官网模块介绍.也可以通过sys模块列出当前版本支持的模块. salt '*' sys.list_ ...
- Ansible简介及常用模块
一.基础介绍 1.简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置. ...
随机推荐
- Centos 7 下 LAMP 部署
一.介绍 LAMP is a combination of operating system and open-source software stack. The acronym of LAMP i ...
- SSRF攻击-运用gopher协议构造POST包--emmmm(http://10.112.68.215:10004/index.php?action=login)
还是天枢的一道CTF题,启程! 分析题目,自己注册账户并登陆后,提示输入一个url,网站会自己运行查找网页信息. emmmmm,很挑衅,网站就当作服务器,我们在url框中输 ...
- Xcode9 打包ipa(导出ipa测试包)时总是意外退出
今天用xcode9,打包ipa总是意外退出. 正处在测试阶段,所以打的也是测试包 ,路径是:Product -> Archive -> Export -> Save for Ad H ...
- ARM交叉编译工具链
交叉编译工具链是一个由编译器.连接器和解释器组成的综合开发环境,交叉编译工具链主要由binutils.gcc和glibc三个部分组成. 免费版目前有三大主流工具商提供,第一是GNU(提供源码,自行编译 ...
- python 学习笔记 ---- 数据类型
Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) ① List 列表 和 Tuple 元组 ...
- YII2表单中上传单个文件
有些时候我们提交的表单中含有文件.怎么样让表单里的数据和文件一起提交. 我的数据表tb_user内容如下: CREATE TABLE `tb_user` ( `id` int(11) unsigned ...
- Magento2 php商城在windows10上安装
magento2 下载地址:https://github.com/magento/magento2/archive/develop.zip 参考地址: 版本要求 这个magento2 要选择好php ...
- (转)数组使用contains
数组使用contains 今天发现一个怪问题,同样是.net3.5环境下的两个项目,一个里支持arr.contains("1"),一个就不支持,代码完全相同也不行.有时在不支持项目 ...
- iOS.-.cxx_destruct
-.cxx_destruct 方法: 该方法是由编译器生成的方法. 1. “ARC actually creates a -.cxx_destruct method to handle freeing ...
- java1.8 版本改成 java1.7版本
以前先安装的java1.7 大部分程序应该都是只支持1.7 不支持1.8 但是因为要跑一个别人的项目 要求是java1.8 所以想在电脑上同时装1.7和1.8 到官网上下载1.8 安装 安装完成后 并 ...