Python之os模块

import os
os.getcwd() # 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname")  # 改变当前脚本工作目录;相当于shell下cd
os.curdir   # 返回当前目录: ('.')
os.pardir  # 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2')    # 可生成多层递归目录
os.removedirs('dirname1')    # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname')    # 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname')    # # 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname')    # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove()  # 删除一个文件
os.opoen("命令体") # 该方式适用于shell命令调用不输出,返回执行过程中得输出内容
os.rename("oldname","newname")  # 重命名文件/目录
os.stat('path/filename') #  获取文件/目录信息
os.sep    # 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep    # 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep    # 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name    # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command")  # 运行shell命令,直接显示
os.environ  # 获取系统环境变量
os.path.abspath(path)  # 返回path规范化的绝对路径
os.path.split(path)  # 将path分割成目录和文件名二元组返回
os.path.dirname(path)  # 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) #  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) #  如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path)  # 如果path是绝对路径,返回True
os.path.isfile(path)  # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path)  # 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]])  # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path)  # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path)  # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) # 返回path的大小

常用配置如下:

路径拼接

path = os.path.join('qiaoning',"wangtao","python.txt")
print(path) #qiaoning/wangtao/python.txt

路径的上级目录

pathdir = os.path.dirname(path)
print(pathdir) #qiaoning/wangtao

文件的绝对路径

path = os.path.abspath('python.txt')
print(path)  ## /Users/qiaoning/python/qiaoning/lianxi/python.txt

pathname = os.path.abspath(__file__)
print(pathname) ## /Users/qiaoning/python/qiaoning/lianxi/test.py

获取当前文件上级目录

path = os.path.dirname(pathname)
print(path)  ## /Users/qiaoning/python/qiaoning/lianxi

判断路径是否存在

if not  os.path.exists(path):
    os.mkdir(path)

创建文件夹

os.makedirs(path)

删除文件

os.remove(path)

删除文件夹

import shutil
shutil.rmtree(path)

查看目录下的文件或文件夹

name_list = os.listdir(path)
print(name_list)

获取文件绝对路径

for base_dir,foler_list,file_list in os.walk(path):
    for name in file_list:
        file_path = os.path.join(base_dir,name)
        print(file_path)

获取当前绝对路径

path = os.path.dirname(os.path.realpath(sys.argv[0]))
print(path)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.os模块(功能类似操作系统与文件交互) 1.常用模块功能 1.创建文件 1.mkdir 2.移除文件 1.re...
    25岁学Python阅读 174评论 0 2
  • OS模块 os模块就是对操作系统进行操作,使用该模块必须先导入模块: import os getcwd() 获取当...
    忘了呼吸的那只猫阅读 306评论 0 5
  • 一、os介绍 os模块主要是对操作执行执行操作,导入方法:import os 二、os.path模块的基本操作 1...
    rr1990阅读 503评论 0 0
  • Python的os模块封装了操作系统的目录和文件操作,要注意这些函数有的在os模块中,有的在os.path模块中。...
    2023开始学阅读 307评论 0 1
  • OS模块提供了查找目录中所有文件的方法,查看OS模块的帮助文档可以了解详细模块相关函数和使用方法。 import ...
    小强聊成长阅读 547评论 0 2