OS 模块

1. os.path.exists() 判断文件/文件夹是否存在

描述:
os.path.exists(路径) 判断文件/文件夹是否存在,如果路径存在,返回 True;如果路径不存在,返回 False。
实例:

>>> os.path.exists("e:\\A")
True
>>> os.path.exists("e:\\A\\a.txt")
True
>>>

2. os.mkdir() 用于创建目录

描述:
os.mkdir() 方法用于以数字权限模式创建目录。默认的模式为 0777 (八进制)。
语法:

os.mkdir(path)

参数:
path -- 要创建的目录
返回值:
NA
实例:
以下实例演示了 mkdir() 方法的使用:

>>> os.mkdir("e:\\test")

3. os.makedirs() 递归创建目录

描述:
os.makedirs() 方法用于递归创建目录。像 mkdir(), 但创建的所有intermediate-level文件夹需要包含子目录。
语法:
makedirs()方法语法格式如下:

os.makedirs(path)

参数:
path -- 需要递归创建的目录。
返回值:
NA
实例:
以下实例演示了 makedirs() 方法的使用:

path = "/tmp/home/monthly/daily"
os.makedirs( path);

4. os.chdir() 改变当前工作目录到指定的路径

描述:
os.chdir() 方法用于改变当前工作目录到指定的路径。
语法:

os.chdir(path)

参数:
path -- 要切换到的新路径。
返回值:
如果允许访问返回 True , 否则返回False。
实例:
以下实例演示了 chdir() 方法的使用:

import os
# 查看当前工作目录
retval = os.getcwd()
print(retval)
# 修改当前工作目录
os.chdir("e:\\test")
# 查看当前工作目录
retval = os.getcwd()
print(retval)
#运行结果
F:\>python test.py
F:\
e:\test

5. os.listdir() 返回指定文件夹包含的列表

概述:
os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。这个列表以字母顺序。 它不包括 '.' 和'..' 即使它在文件夹中
只支持在 Unix, Windows 下使用。
语法:

os.listdir(path)

参数:
path -- 需要列出的目录路径
返回值:
返回指定路径下的文件和文件夹列表。
实例
以下实例演示了 listdir() 方法的使用:

>>> import os
>>> os.listdir("e:\\python_practice\\practice02\\test03")
['b.txt', 'c.txt', 'test']
>>>

6. os.walk() 文件、目录遍历器

概述:
os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。
os.walk() 方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。
在Unix,Windows中有效。
语法:

os.walk(root_path[, topdown=True])

参数:
root_path-- 是你所要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。

root 所指的是当前正在遍历的这个文件夹的本身的地址
dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
topdown --可选,为 True,则优先遍历 top 目录,否则优先遍历 top 的子目录(默认为开启)。如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹中每一个子目录
返回值:
该方法没有返回值。
实例:
以下实例演示了 walk() 方法的使用:

遍历目录包含的文件、文件夹
import os
for root,dirs,files in os.walk("e:\\python_practice"):
    for name in files:
        print(os.path.join(root,name))
    for dir in dirs:
        print(os.path.join(root,dir))
#运行结果
e:\python_practice\practice01
e:\python_practice\practice02
e:\python_practice\practice01\a.txt
e:\python_practice\practice02\test02
e:\python_practice\practice02\test03
e:\python_practice\practice02\test03\b.txt
e:\python_practice\practice02\test03\c.txt
e:\python_practice\practice02\test03\test
e:\python_practice\practice02\test03\test\d.txt

判断文件、文件夹是否存在
import os
def is_exists(root_path,file_path):
    for root,dirs,files in os.walk(root_path):
        for file in files:
            if os.path.join(root,file) == file_path:
                return True
    return False
    
root_path = "e:\\python_practice"
file_path = "e:\\python_practice\\practice01\\a.txt"
print(is_exists(root_path,file_path))
#运行结果
True
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Pythos中调用操作系统的模块,提供对操作系统进行调用的接口 API方法 os.getcwd() 获取当前工作目...
    So_ProbuING阅读 2,293评论 0 4
  • os模块 os模块的作用: os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常...
    Irlans阅读 619评论 0 2
  • 记录常用命令: os.name #显示当前使用的平台 os.sep #当前平台下路径分隔符 os.lines...
    merryzhou阅读 432评论 0 0
  • os.name 输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,...
    蛋挞先生L阅读 328评论 0 0
  • 最常用的OS方法: 作者:Simon0903 链接:https://www.jianshu.com/u/2b4bc...
    Simon0903阅读 1,335评论 0 0