首页 > 其他 > 详细

常用模块 plus

时间:2018-12-28 00:05:38      阅读:216      评论:0      收藏:0      [点我收藏+]

一.os 模块

  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是一种轻量级数据的数据交换格式

  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

原文:https://www.cnblogs.com/q767498226/p/10188198.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!