python-杂碎知识3-os和os.path.

1.os

  (1)目录相关

def make_dir(path):
    """创建目录"""
    os.mkdir(path)
    print(f"创建目录:{path}成功")

def make_many_dirs(path):
    """创建多级目录"""
    os.makedirs(path)
    print(f"创建多级目录成功:{path}")

def delete_empty_dir(path):
    """删除空目录"""
    os.rmdir(path)
    print(f"删除目录成功,目录:{path}")

def delete_not_empty_dir(path):
    """删除非空目录"""
    import shutil
    shutil.rmtree(path)
    print(f"删除目录成功,目录:{path}")

def rename_dir(old,new):
    """重命名文件目录"""
    os.rename(old,new)
    print(f"重命名{old}命名{new}成功")
  (2)文件权限相关   os.F_OK(是否存在)  os.R_OK(是否可读)  os.W_OK(是否可写)  os.X_OK(是否可执行)
# 验证文件的权限
new=r"E:\V\M\python\c07\a\info.txt"
value=os.access(path=new,mode=os.F_OK)
print(value)

# 修改文件权限  权限值:r  w  x  rwx   用户权限:OTH  GRP   USR
path=r"E:\V\M\python\c07\a\info.txt"
os.chmod(path=path,mode=stat.S_IRUSR)

 

 2.os.path(文件路径)

  

path=r"E:\V\M\python\c7\a\info.txt"
# 是否为目录
os.path.isdir(path)
# 是否为文件
os.path.isfile(path)

# 获取当前文件的目录 os.getcwd()

def get_path():
    path=os.getcwd()
    return  path

path=get_path()
print(path)

# 获取绝对路径
path=r"E:\V\M\python\c7\a\info.txt"
print(os.path.abspath(path))

# 获取路径的目录
path=r"E:\V\M\python\c7\a"
print("目录名称:",os.path.dirname(path))

#路径是否存在,存在返回True
print("路径是否存在",os.path.lexists(path))

# 路径进行分割  把目录及文件进行分割,返回一个元组os.path.split(path)
path=r"E:\V\M\python\c7\a\info.txt"
value=os.path.split(path)
print(value)
rootpath=value[0]
print(f"获取路径{value}的目录:{rootpath}")

# 获取当前文件的名称
rootpath="E:\V\M\python"
filename="1.log"
# 把目录和文件进行拼接os.path.join(目录,文件)
path=os.path.join(rootpath,filename)
print(path)

# 需求:log目录/日志文件+时间
rootpath="E:\V\M\python"
log_dir=os.path.join(rootpath,"log")
import time
path=os.path.join(log_dir,f'log_{time.strftime("%Y%m%d%H%M%S",time.localtime())}.txt')
print(path)

# 如何获取根路径
path=__file__
print(path)
dir_path=os.path.dirname(os.path.dirname(path))
print(dir_path)

 注:os.path.dirname(path)  作用:去掉文件名,返回目录或返回path路径最后一层的目录;__file__表示了当前文件的path,os.path.dirname((__file__)和os.path.dirname(“E:/R/yaml.py”)一样

  所以os.path.dirname(__file__)就是当前文件的绝对路径

  

  每篇一句:

  心姐又说了一个搞笑的:简便洗手,洗手简便。

  

 

posted on 2021-11-25 22:35  Titen  阅读(36)  评论(0编辑  收藏  举报

导航